用python实现英文字母和相应序数转换的方法


Posted in Python onSeptember 18, 2019

第一步:字母转数字

英文字母转对应数字相对简单,可以在命令行输入一行需要转换的英文字母,然后对每一个字母在整个字母表中匹配,并返回相应的位数,然后累加这些位数即可。过程中,为了使结果更有可读性,输出相邻数字间怎加了空格,每个对应原来单词间增加逗号。

c="abcdefghijklmnopqrstuvwxyz"
temp=''
list=[]
s=input()
num=len(s)
list.append(s)
for i in range(0,num):
 if list[0][i]==' ':
 temp+=','
 else:
 for r in range(1,26):
  if list[0][i]==c[int(r)-1]:
  temp+=str(r)
  temp+=' '
print("输出结果为:%s"%temp)

第二步:数字转字母

数字转字母有个难点就是,当输入一行数字,如何才能合理地把它们每个相应位的数取出来。

才开始想到用正则匹配,定模式单元(\d+,{0,}),然后希望每个数字用.groups()形式返回一个元组(tuple),但限于要输入数字的个数位置,没找到好的匹配方式。

然后用到了split()函数,用相应的分隔符分割一段字符串之后,将值已list形式返回。

c="abcdefghijklmnopqrstuvwxyz"
temp=''
s=input()
s_list=s.split(",")
num=len(s_list)
for i in range(0,num):
 if s_list[i]==' ':
 temp+=' '
 else:
 result=c[int(s_list[i])-1]
 temp+=result
print("输出结果是:%s"%temp)

完整代码

#-*- coding: utf-8 -*-
import re
def main():
 ss=input("请选择:\n1.字母->数字\
    \n2.数字->字母\n")
 if ss=='1':
 print("请输入字母: ")
 fun1()
 elif ss=='2':
 print("请输入数字:")
 fun2()
 
def fun1():
 c="abcdefghijklmnopqrstuvwxyz"
 temp=''
 list=[]
 s=input()
 num=len(s)
 list.append(s)
 for i in range(0,num):
 if list[0][i]==' ':
  temp+=','
 else:
  for r in range(1,26):
  if list[0][i]==c[int(r)-1]:
   temp+=str(r)
   temp+=' '
 print("输出结果为:%s"%temp)

def fun2():
 c="abcdefghijklmnopqrstuvwxyz"
 temp=''
 s=input()
 s_list=s.split(",")
 num=len(s_list)
 for i in range(0,num):
 if s_list[i]==' ':
  temp+=' '
 else:
  result=c[int(s_list[i])-1]
  temp+=result
 print("输出结果是:%s"%temp)

if __name__ == '__main__':
 main()

便可利用该python代码实现英文字母和对应数字的相互转换。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
tornado捕获和处理404错误的方法
Feb 26 Python
Python下的Softmax回归函数的实现方法(推荐)
Jan 26 Python
对pandas的dataframe绘图并保存的实现方法
Aug 05 Python
Python实现利用最大公约数求三个正整数的最小公倍数示例
Sep 30 Python
浅谈关于Python3中venv虚拟环境
Aug 01 Python
python os.path模块常用方法实例详解
Sep 16 Python
Django objects的查询结果转化为json的三种方式的方法
Nov 07 Python
python操作文件的参数整理
Jun 11 Python
Python字符串和正则表达式中的反斜杠('\')问题详解
Sep 03 Python
python 数据类型强制转换的总结
Jan 25 Python
django上传文件的三种方式
Apr 29 Python
django学习之ajax post传参的2种格式实例
May 14 Python
Django模板导入母版继承和自定义返回Html片段过程解析
Sep 18 #Python
Python爬虫图片懒加载技术 selenium和PhantomJS解析
Sep 18 #Python
python rsa实现数据加密和解密、签名加密和验签功能
Sep 18 #Python
决策树剪枝算法的python实现方法详解
Sep 18 #Python
python生成requirements.txt的两种方法
Sep 18 #Python
python2与python3爬虫中get与post对比解析
Sep 18 #Python
python中class的定义及使用教程
Sep 18 #Python
You might like
php中get_cfg_var()和ini_get()的用法及区别
2015/03/04 PHP
thinkphp5 URL和路由的功能详解与实例
2017/12/26 PHP
PHP中的访问修饰符简单比较
2019/02/02 PHP
jquery+json实现的搜索加分页效果
2010/03/31 Javascript
jQuery maxlength文本字数限制插件
2010/04/16 Javascript
javascript oop开发滑动(slide)菜单控件
2010/08/25 Javascript
jQuery.ajax 用户登录验证代码
2010/10/29 Javascript
jQuery学习笔记之jQuery的动画
2010/12/22 Javascript
js监听滚动条滚动事件使得某个标签内容始终位于同一位置
2014/01/24 Javascript
分享一些常用的jQuery动画事件和动画函数
2015/11/27 Javascript
七个不允许错过的jQuery小技巧
2015/12/21 Javascript
基于Bootstrap的后台管理面板 Bootstrap Metro Dashboard
2016/06/17 Javascript
JS使用正则实现去掉字符串左右空格的方法
2016/12/27 Javascript
Angularjs分页查询的实现
2017/02/24 Javascript
JS实现双击内容变为可编辑状态
2017/03/03 Javascript
Node.js如何响应Ajax的POST请求并且保存为JSON文件详解
2017/03/10 Javascript
react router 4.0以上的路由应用详解
2017/09/21 Javascript
js导出Excel表格超出26位英文字符的解决方法ES6
2017/11/15 Javascript
使用DataTable插件实现异步加载数据
2017/11/19 Javascript
JS 中document.write()的用法和清空的原因浅析
2017/12/04 Javascript
AngularJS 应用模块化的使用
2018/04/04 Javascript
Node.js API详解之 os模块用法实例分析
2020/05/06 Javascript
[16:21]教你分分钟做大人:圣堂刺客
2014/12/03 DOTA
Matplotlib 生成不同大小的subplots实例
2018/05/25 Python
在django模板中实现超链接配置
2019/08/21 Python
mac使用python识别图形验证码功能
2020/01/10 Python
Python单元测试模块doctest的具体使用
2020/02/10 Python
Laura官网:加拿大女性的顶级时尚目的地
2019/09/20 全球购物
写自荐信有哪些不宜?
2013/10/17 职场文书
励志演讲稿500字
2014/08/21 职场文书
出生医学证明书
2014/09/15 职场文书
三八妇女节寄语
2015/02/27 职场文书
教育读书笔记
2015/07/02 职场文书
寒假生活随笔
2015/08/15 职场文书
Java获取e.printStackTrace()打印的信息方式
2021/08/07 Java/Android
win10清理dns缓存
2022/04/19 数码科技