# !/usr/bin/env python
# -*-coding:utf8-*-
# 为文件中每行的开头添加行号
def addLineNumberForFile(srcFilePath, dstFilePath):
if srcFilePath == dstFilePath:
raise NameError('Invalid arguments, ' + 'p1 = ' + srcFilePath + ', p2 = ' + dstFilePath)
with open(srcFilePath) as srcfd:
lineNum = 0
with open(dstFilePath, 'w') as dstfd:
for line in srcfd.readlines():
lineNum += 1
dstfd.write(str(lineNum) + "\t" + line)
# 单元测试
if __name__ == '__main__':
srcFilePath = 'data.txt'
dstFilePath = 'data_latest.txt'
try:
addLineNumberForFile(srcFilePath, dstFilePath)
print('Success to add line number for the file named ' + srcFilePath)
print('The result file is ' + dstFilePath)
except NameError as nError:
print nError
中文有乱码,还可以做下面的设置:
import sys
reload(sys)
sys.setdefaultencoding('utf-8')