如何读取一个文件,并进行字符处理

字符串处理太重要了,不管你信不信。这里提几点

  1. 但凡多行处理都应该用readlines(),注意读出来后每一行的末尾都有一个'\n'。read()其实很少用到
  2. strip('\n')可以直接写成strip()
  3. writelines()这个东西比较坑,建议每写入一行都用write()
  4. 推荐一个神级字符串处理网站,虽然其中有个别错误和重复
    http://www.cnblogs.com/huangcong/archive/2011/08/29/2158268.html
  5. 最后提交一个自己写的一篇具有清晰注释的python代码!
# -*- coding: utf-8 -*-

# 在编程工作中我们往往会遇到大量的字符串转换,如果手动操作那将会累死人,而且不符合程序员的风格
# 这个时候如果写一个python程序进行转换,就能让你的同事们静静地看着你装B了

# 以只读的方式打开原始文件
f = open('prefix.txt','r')

# 以只写的方式创建一个新的txt文件,如果已经存在将会删了重建
f1 = open('wenli.txt','w')

for l in f.readlines():
    # readlines()返回的是一个数组,每一个元素末尾都有一个'\n'
    # rstrip(),去除最右边的字符,如果为空则默认去除\n,\t
    l1 = l.rstrip()

    # 也可以使用l1.find()函数
    if 'Column(Numeric(' in l1:
        l2 = 'double '
        # 拼接字符串
        l2 += l1
        # 字符串中遇到' = '就隔开,将左右内容分别存放在数组中
        l3 = l2.split(' = ')
        # 把数组变成只取左边的元素(python能够自动转换数据类型= =)
        l3 = l3[0]
        # 增加一个换行符,这样在write的时候才会自动换行
        l3 += ';\n'
        f1.write(l3)
        
    elif 'Column(String(' in l1:
        l2 = 'String '
        l2 += l1
        l3 = l2.split(' = ')
        l3 = l3[0]
        l3 += ';\n'
        f1.write(l3)

# 如果只用w方式,关不关都可以,但要养成一个好的习惯
f1.close()


你可能感兴趣的:(如何读取一个文件,并进行字符处理)