Hem*_*ant 1 python file-handling
假设我有一个文件(比方说file1.txt),数据大约3mb或更多.如果我想将这些数据写入第二个文件(比方说file2.txt),以下哪种方法会更好?
使用的语言:Python 2.7.3
方法1:
file1_handler = file("file1.txt", 'r')
for lines in file1_handler:
line = lines.strip()
# Perform some operation
file2_handler = file("file2.txt", 'a')
file2_handler.write(line)
file2_handler.write('\r\n')
file2_handler.close()
file1_handler.close()
Run Code Online (Sandbox Code Playgroud)
方法2:
file1_handler = file("file1.txt", 'r')
file2_handler = file("file2.txt", 'a')
for lines in file1_handler:
line = lines.strip()
# Perform some operation
file2_handler.write(line)
file2_handler.write('\r\n')
file2_handler.close()
file1_handler.close()
Run Code Online (Sandbox Code Playgroud)
我认为方法二会更好,因为你只需打开和关闭file2.txt一次.你说什么?
使用with,它会自动关闭文件:
with open("file1.txt", 'r') as in_file, open("file2.txt", 'a') as out_file:
for lines in in_file:
line = lines.strip()
# Perform some operation
out_file.write(line)
out_file.write('\r\n')
Run Code Online (Sandbox Code Playgroud)
open代替使用file,file不推荐使用.
当然,在file1的每一行上打开file2是不合理的.
| 归档时间: |
|
| 查看次数: |
147 次 |
| 最近记录: |