初识python 之 自动拆分转换文本内容
上一篇升级版,转换文件内容。
#!/user/bin env python
# author:Simple-Sir
# time:2021/7/9 23:32 def txt_2_list(filename):
dic = {}
dic_k = []
dic_v = []
with open(filename,'r',encoding='utf-8') as f:
for i in f.readlines():
j = i.strip('\n') # 删除换行符
li_k = j.split(',') # 以逗号分隔为列表
if len(li_k) == 2:
dic[li_k[0]] = li_k[1]
dic_k.append(li_k[0])
dic_v.append(li_k[1])
else:
dic_k.append(li_k[0])
return dic,dic_k,dic_v def get_word_in_list(info,dic_k):
word_li = []
while len(info) > 0:
m = 0
n = 0
for i in range(len(info)+1):
if info[:i] in dic_k:
word_li.append(info[:i])
info = info[i:]
n = 1
m = i
if n == 0:
word_li.append(info[0:1])
info = info[m+1:]
return word_li def translat_word(word_li,dic,dic_k):
get_v = []
for i in word_li:
if i in dic_k:
get_v.append(dic[i])
else:
get_v.append(i)
re_w = ('_').join(get_v)
return re_w if __name__ == '__main__':
dict_file = 'dir'
info_file = 'infofile'
info_k=txt_2_list(info_file)[1]
print('----------- 要转换的内容 ----------\n ',('\n ').join(info_k))
print('----------- 转换结果 ------------')
for info in info_k:
dic,dic_k,dic_v = txt_2_list(dict_file)
word_li = get_word_in_list(info, dic_k)
tw = translat_word(word_li,dic,dic_k)
print('%s -->> %s'%(info,tw))
自动拆分并转换文件内容
字典库:
剪刀,jiandao
被子,beizi
笔,bi
我,wo
要,yao
要转换的文件内容:
我要剪刀
我不要剪刀
我要剪刀和笔
我要被子和剪刀
转换结果:
初识python 之 自动拆分转换文本内容的更多相关文章
- python读取、写入txt文本内容
转载:https://blog.csdn.net/qq_37828488/article/details/100024924 python常用的读取文件函数有三种read().readline().r ...
- 初识python: 字符编码转换
指定当前文件编码格式:#-*- coding:utf-8 -*-unicode(万国码): 英文字母 1个字节,中文3个字节python中所有的字符都是unicode编码所有非unicode编码互转都 ...
- 对于pycharm和vscode下,从外部复制文本内容为python字符串内容是会自动加\u202a解决办法
先来看下这个python3源代码,表面上看没有语法毛病,如果源代码字符串内容是手动复制过来的文本内容,在pycharm和vscode下始终提示: pywintypes.error: (2, 'Shel ...
- Python: 转换文本编码
最近在做周报的时候,需要把csv文本中的数据提取出来制作表格后生产图表. 在获取csv文本内容的时候,基本上都是用with open(filename, encoding ='UTF-8') as f ...
- 利用Python imaplib和email模块 读取邮件文本内容及附件内容
python使用imap接收邮件的过程探索 https://www.cnblogs.com/yhlx/archive/2013/03/22/2975817.html #! encoding:utf8 ...
- Cleave.js – 自动格式化表单输入框的文本内容
Cleave.js 有一个简单的目的:帮助你自动格式输入的文本内容. 这个想法是提供一个简单的方法来格式化您的输入数据以增加输入字段的可读性.通过使用这个库,您不需要编写任何正则表达式来控制输入文本的 ...
- 转换 Html 内容为纯文本内容(html,文本互转)
转自http://www.cnblogs.com/jyshi/archive/2011/08/09/2132762.html : /// <summary> /// 转换纯文本内容为 HT ...
- css为超过一定宽度的文本内容自动加上省略号
当在html中某个地方添加文本内容的时候如果内容过长我们会希望他超过一定宽度之后,其余的可以被截断,后面补充为省略号: 实现方式: 1.设置css样式为文本不换行: 2.位包裹文本的标签指定宽度: 3 ...
- jq选择器(jq 与 js 互相转换),jq操作css样式 / 文本内容, jq操作类名,jq操作全局属性,jq获取盒子信息,jq获取位置信息
jq选择器(jq 与 js 互相转换) // 获取所有的页面元素jq对象 $('css3选择器语法'); var $box = $(".box:nth-child(1)"); 获取 ...
随机推荐
- excel数据导入mySql数据库
1.将excel数据保存好 2.打开数据库,在表上点击右键,选择导入向导 3.点击下图中红色部门,点击下一步 4.选择excel文件的位置,下方的表空间内,会出现excel中的sheet页,选择要导入 ...
- 团队协作项目——SVN的使用
参考文献:https://www.cnblogs.com/rwh871212/p/6955489.html 老师接了一个新项目,需要团队共同完成开发任务,因此需要SVN.SVN是C/S架构: 1.服务 ...
- 程序员Meme 第02期
- gitlab 集成openldap
Setting up LDAP sign-in If you have an LDAP directory service such as Active Directory, you can conf ...
- malloc实现
任何一个用过或学过C的人对malloc都不会陌生.大家都知道malloc可以分配一段连续的内存空间,并且在不再使用时可以通过free释放 掉.但是,许多程序员对malloc背后的事情并不熟悉,许多人甚 ...
- 显示大纲数字(Project)
<Project2016 企业项目管理实践>张会斌 董方好 编著 话说摘要任务,给人的感觉,就像Word里的大纲级别,可我也知道,好多同学不习惯用大纲级别,而是偏爱用编号级别,最常见的也就 ...
- 动手做个 AI 机器人,帮我回消息!
大家好,我是鱼皮,自从做了知识分享,我的微信就没消停过,平均每天会收到几百个消息,大部分都是学编程的朋友向我咨询编程问题. 但毕竟我只有一个人,没法所有消息都一个个回复,所以也是很愧疚和无力吧:另外我 ...
- java面向对象类的继承~ 匿名类 ;多态特性;强制类型转换
类的继承 创建子类语法: 修饰符 class 子类名 extends 父类名{ } 匿名子类语法: 直接实例化,过程中通过匿名类 继承父类,在实例化过程中将子类匿名 <父类 ...
- Python3 面向对象之-----元类
元类 1. 类也是对象 在大多数编程语言中,类就是一组用来描述如何生成一个对象的代码段.在Python中这一点仍然成立: >>> class ObjectCreator(object ...
- 优化vue+springboot项目页面响应时间:waiting(TTFB) 及content Download
优化vue+springboot项目页面响应时间:waiting(TTFB) 及content Download TTFB全称Time To First Byte,是指网络请求被发起到从服务器接收到地 ...