初识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)"); 获取 ...
随机推荐
- shell获取目录下(包括子目录)所有文件名、路径、文件大小
一例shell脚本:取得目录下(包括子目录)所有文件名.路径与文件大小. 代码,shell脚本: lsdir.sh #!/bin/bash # #site: www.jquerycn.cn funct ...
- shell 截取字符串实例教程
本节内容:shell字符串截取方法 1,去掉字符串最左边的字符 [root@jbxue ~]$ vi test.sh 1 STR="abcd" 2 STR=${STR#" ...
- 【MySQL】排名函数
https://www.cnblogs.com/shizhijie/p/9366247.html 排名函数 主要有rank和dense_rank两种 区别: rank在排名的时候,排名的键一样的时候是 ...
- 安装Redis5.0.8教程图解
文档:安装Redis5.0.8教程图解.note 链接:http://note.youdao.com/noteshare?id=737620a0441724783c3f8ef14ab8a453& ...
- 自定义 UITableViewCell 的 accessory 样式
对于 UITableViewCell 而言,其 accessoryType属性有4种取值: UITableViewCellAccessoryNone, UITableViewCellAccessory ...
- [BUUCTF]PWN——babyheap_0ctf_2017
[BUUCTF]PWN--babyheap_0ctf_2017 附件 步骤: 例行检查,64位,保护全开 试运行一下程序,看到这个布局菜单,知道了这是一道堆的题目,第一次接触堆的小伙伴可以去看一下这个 ...
- Python pyecharts绘制水球图
一.水球图Liquid.add()方法简介 Liquid.add()方法签名add(name, data, shape='circle', liquid_color=None, is_liquid_a ...
- Table.Combine追加…Combine(Power Query 之 M 语言)
数据源: 销量表和部门表 目标: 其中一表的数据追加到另一表后面,相同列直接追加,不同列增加新列 操作过程: 选取销量表>[主页]>[追加查询]/[将查询追加为新查询]>选择要追加的 ...
- netty系列之:小白福利!手把手教你做一个简单的代理服务器
目录 简介 代理和反向代理 netty实现代理的原理 实战 总结 简介 爱因斯坦说过:所有的伟大,都产生于简单的细节中.netty为我们提供了如此强大的eventloop.channel通过对这些简单 ...
- 使用proxy解决请求跨域问题
背景 在 react 项目里,前端请求接口时出现了跨域问题(类似图片中的提示) 这时最快捷的方法就是让后端同学设置请求允许跨域(如图配置响应头) 如果后端同学不配合,就需要靠我们自己来了! 实现 Re ...