上一篇升级版,转换文件内容。

#!/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 之 自动拆分转换文本内容的更多相关文章

  1. python读取、写入txt文本内容

    转载:https://blog.csdn.net/qq_37828488/article/details/100024924 python常用的读取文件函数有三种read().readline().r ...

  2. 初识python: 字符编码转换

    指定当前文件编码格式:#-*- coding:utf-8 -*-unicode(万国码): 英文字母 1个字节,中文3个字节python中所有的字符都是unicode编码所有非unicode编码互转都 ...

  3. 对于pycharm和vscode下,从外部复制文本内容为python字符串内容是会自动加\u202a解决办法

    先来看下这个python3源代码,表面上看没有语法毛病,如果源代码字符串内容是手动复制过来的文本内容,在pycharm和vscode下始终提示: pywintypes.error: (2, 'Shel ...

  4. Python: 转换文本编码

    最近在做周报的时候,需要把csv文本中的数据提取出来制作表格后生产图表. 在获取csv文本内容的时候,基本上都是用with open(filename, encoding ='UTF-8') as f ...

  5. 利用Python imaplib和email模块 读取邮件文本内容及附件内容

    python使用imap接收邮件的过程探索 https://www.cnblogs.com/yhlx/archive/2013/03/22/2975817.html #! encoding:utf8 ...

  6. Cleave.js – 自动格式化表单输入框的文本内容

    Cleave.js 有一个简单的目的:帮助你自动格式输入的文本内容. 这个想法是提供一个简单的方法来格式化您的输入数据以增加输入字段的可读性.通过使用这个库,您不需要编写任何正则表达式来控制输入文本的 ...

  7. 转换 Html 内容为纯文本内容(html,文本互转)

    转自http://www.cnblogs.com/jyshi/archive/2011/08/09/2132762.html : /// <summary> /// 转换纯文本内容为 HT ...

  8. css为超过一定宽度的文本内容自动加上省略号

    当在html中某个地方添加文本内容的时候如果内容过长我们会希望他超过一定宽度之后,其余的可以被截断,后面补充为省略号: 实现方式: 1.设置css样式为文本不换行: 2.位包裹文本的标签指定宽度: 3 ...

  9. jq选择器(jq 与 js 互相转换),jq操作css样式 / 文本内容, jq操作类名,jq操作全局属性,jq获取盒子信息,jq获取位置信息

    jq选择器(jq 与 js 互相转换) // 获取所有的页面元素jq对象 $('css3选择器语法'); var $box = $(".box:nth-child(1)"); 获取 ...

随机推荐

  1. 【Linux】【Commands】systemd

    1. 系统启动流程:POST --> Boot Sequeue(BIOS) --> Bootloader(MBR) --> Kernel(ramdisk) --> rootfs ...

  2. 2.使用Lucene开发自己的搜索引擎–indexer索引程序中基本类介绍

    (1)Directory:Directory类描述了Lucene索引的存放位置,它是一个抽象,其子类负责具体制定索引的存储路径.FSDirectory.open方法来获取真实文件在文件系统中的存储路径 ...

  3. Linux中的正则

    目录 一.匹配规则 二.举例 一.匹配规则 * 匹配 0 或多个字符 ? 匹配任意一个字符 [list] 匹配 list 中的任意单一字符 [^list] 匹配 除list 中的任意单一字符以外的字符 ...

  4. 什么是git?

    目录 一.简介 Git与SVN 区别 一.简介 Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目. Git 是 Linus Torvalds 为了帮助管理 Linux 内核 ...

  5. [BUUCTF]PWN——[HarekazeCTF2019]baby_rop2

    [HarekazeCTF2019]baby_rop2 题目附件 步骤: 例行检查,64位,开启了nx保护 运行了一下程序,了解大概的执行情况 64位ida载入,shift+f12检索程序里的字符串,没 ...

  6. CF652B z-sort 题解

    Content 定义一个数组是 \(\text{Z}\) 排序过的,当且仅当: 对于所有的 \(i=2k+1(k\in\mathbb Z)\),\(a_i\leqslant a_{i-1}\). 对于 ...

  7. CF1291A Even But Not Even 题解

    Content 有 \(t\) 组数据,每组数据给定一个整数 \(n\),接着给出一个长度为 \(n\) 的数字串.请从中删除一些数,使得剩下的数字串不是偶数,但是其和为偶数,或者不存在这样的方案. ...

  8. 使用容器挂载NFS

    https://kubernetes.io/docs/concepts/storage/persistent-volumes/#persistent-volumes nfs 标准协议 v2 v3 v4 ...

  9. flutter 学习笔记

    常用属性 container 填充padding,边距margins,边框borders,背景色color, decoration: 渐变gradient-Alignment(x,y),圆角borde ...

  10. 使用mysql查询语句统计数据,如果是null值则赋值为0

    select IFNULL(sum(total_view),0) from 如果统计total_view这列为null ,则返回默认值0