在工作中遇到一个问题:每一个产品在测试的时候都会把测试文件保存下来,里面有一项是测试的温度,由于某种需要我需要把每个产品的温度都统计出来进行分析,于是我写了一个小代码去遍历所有测试文件
测试平台是Linux环境,安装的python 版本是Python 2.4.3
代码如下:
r_f=file(i,'r') # 以只读方式打开文件 “ i ”
while True:
line=r_f.readline() # 每次读取一行
if len(line) == 0: # 读完之后退出
break
以下是对抓出来的每一行信息进行操作
......
把处理过的数据进行保存
w_f = file("temp_info",'a+') # 以追加模式打开文件
w_f.write(temp_record) # 把需要写进”temp_info" 的信息写进去
w_f.close() # 关闭“temp_info" 文件
r_f.close() # 关闭文件 “i”
这个程序很快就写完了,运行也没有问题,我想要的结果都得到了
后来我想把这段程序放在我的私人笔电上的时候,运行出了以下Error:
“NameError: name 'file' is not defined”
由于我的笔电是Python 3.6.1 的版本,经过实验,解决办法如下:
在Python 2.x 版本中对文件的操作,可以用 file() / Open() 方法打开文件,
在Python 3.x 版本中对文件的操作只能用Open() 的方法,Python 官网中,对这一项的说明:
Removed file. Use open().
也就是把下面语句改一下即可:
r_f=file(i,'r') --> r_f = open(i.'r')
Python 3.0 新增的东西可以参考以下官网的连接:
link: https://docs.python.org/release/3.0/whatsnew/3.0.html#builtins