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命令让其显示所有的符号,以便观察。