当前位置:小鱼儿玄机二站 > 编程应用 > 运用字典对点名文本字符串举行替换

运用字典对点名文本字符串举行替换

文章作者:编程应用 上传时间:2019-09-03

python3.5学习笔记--利用字典对点名文本字符串举行替换,

职业缘起于同事整理excel,须要批量的对某一列的从头到尾的经过张开调换。

举例:

数量格式:以下为一列内容,每行都在贰个单元格中,指标是将数字替换为制定的汉语字符。

1,2,31

,4,33

,21,,

对此拍卖办法左思右想,感觉用shell能够解决,不过只怕相对费力,

用数据库的话,由于数量在三个单元格,完毕起来功能太低。

终极,感到那恰好属于python3.第55中学对字典的利用,遂写了一段脚本去落到实处,具体脚本如下:

1、首先将索要管理的一列粘贴出,并将逗号批量轮换为空格,以便能够实行列表(list)的转移

#######################################################

#encoding: utf-8
a_dict = {1:'你好',2:'我好',3:'大家好'}

input_file = open(r'C:UsersxxxxDesktopshujushuju.txt','r')   #read源文件
output_file = open(r'C:UsersxxxxDesktopshujuresult.txt','a+')  #追加写入结果文件
line = input_file.readline()

while line:  #逐行读取源文件
    a = line.split()  #每一行转换为一个列表-list
    res = []  #建立结果列表
    for item in a:
        res.append(a_dict[int(item)])  #将结果写入结果列表
    output_file.write(str(res)+ 'n')  #将结果列表追加写入结果文件
    line = input_file.readline()

input_file.close()     #关闭文件
output_file.close()
###########################################################################
其实这并不是真正意义上的替换,并没有用replace()方法
因为我试用replace()方法时,发现他对文本中数字的读取并不能很好的处理 两位数。
因此直接对目的进行转换,并且重新输出,这样对我来说逻辑可能更清晰一点。

事情缘起于同事整理excel,要求批量的对某一列的内容进行替换。 举例: 数据格式...

专门的职业缘起于同事整理excel,须求批量的对某一列的内容开展替换。

举例:

多少格式:以下为一列内容,每行都在五个单元格中,目标是将数字替换为拟定的国语字符。

1,2,31

,4,33

,21,,

对此拍卖方法大费周折,以为用shell能够消除,但是也许相对辛勤,

用数据库的话,由于数量在三个单元格,达成起来功用太低。

最终,以为那刚好属于python3.5中对字典的使用,遂写了一段脚本去落到实处,具体脚本如下:

1、首先将急需管理的一列粘贴出,并将逗号批量交替为空格,以便能够进行列表(list)的改造

#######################################################

#encoding: utf-8
a_dict = {1:'你好',2:'我好',3:'大家好'}

input_file = open(r'C:UsersxxxxDesktopshujushuju.txt','r')   #read源文件
output_file = open(r'C:UsersxxxxDesktopshujuresult.txt','a+')  #追加写入结果文件
line = input_file.readline()

while line:  #逐行读取源文件
    a = line.split()  #每一行转换为一个列表-list
    res = []  #建立结果列表
    for item in a:
        res.append(a_dict[int(item)])  #将结果写入结果列表
    output_file.write(str(res)+ 'n')  #将结果列表追加写入结果文件
    line = input_file.readline()

input_file.close()     #关闭文件
output_file.close()
###########################################################################
其实这并不是真正意义上的替换,并没有用replace()方法
因为我试用replace()方法时,发现他对文本中数字的读取并不能很好的处理 两位数。
因此直接对目的进行转换,并且重新输出,这样对我来说逻辑可能更清晰一点。

本文由小鱼儿玄机二站发布于编程应用,转载请注明出处:运用字典对点名文本字符串举行替换

关键词: