Python 删除整个文本中的空格,并实现按行显示
希望以后每天写一篇博客,总结一下每天用到的基本功能,不然项目做完也就做完了,给自己留下的资料太少了。
今天需要造大量的姓名和家庭住址的数据,因此根据读取文件中现有的lastname、firstname以及省、市、道路等随机生成大量的模拟姓名和住址。其中用python进行了简单的文本处理,去掉文本中的空格,数字或者没用的字符等。
example 1: 从ifn文件中读取数据,根据空格进行逐个读取,并进行换行显示。
#encoding = utf-8# ifn = r"firstname.txt" ofn = r"Output.txt" infile = open(ifn,'rb') outfile = open(ofn,'wb') for eachline in infile.readlines(): lines = eachline.split(' ') for temp in lines print temp outfile.write(temp+'\n') infile.close outfile.close
example2:去掉所有的数字和某个符号,用正则表达式实现。
#只剩下数字,空格和. import os,sys,string str = "12.mengegsihello." result = filter(lambda ch:ch in '.0123456789 ',str) print result
#过滤掉所有的数字,空格和.,可以根据需要设置任何符号 import os,sys,string str = "12.mengegsihello." result = filter(lambda ch:ch not in '.0123456789 ',str) print result
Tips:有时候中文符号和英文符号会出现混乱,当实际的输出和预期的不一样的时候,在vim下可以通过set list命令让其显示所有的符号,以便观察。