读取文件

你之前已经看过各种类型的数据持有者:整数、字符串、列表。但到目前为止,我们还没有讨论如何读取或写入文件。

读取文件

你可以使用以下代码读取文件。

该文件需要与程序位于同一目录中,如果不是,则需要指定路径。

#!/usr/bin/env python
 filename = "bestand.py"
 # The function readlines() reads the file.             
with open(filename) as f:
    content = f.readlines()
 # We added the comma to print single newlines and not double newlines.for line in content:
    print(line),

代码的第一部分将读取文件内容。读取的所有行都将存储在变量内容中。第二部分将迭代变量内容中的每一行。

如果你不想读取换行符 \n,可以将语句 f.readlines() 更改为:

content = f.read().splitlines()

新代码如下:

#!/usr/bin/env python
 filename = "bestand.py"
 # The function readlines() reads the file.
with open(filename) as f:
    content = f.read().splitlines()
 # We added the comma to print single newlines and not double newlines.for line in content:
    print(line)

虽然上面的代码有效,但我们应该始终测试我们要打开的文件是否存在。我们将首先测试文件是否不存在,如果是,它将读取文件,否则返回错误。如下面的代码:

#!/usr/bin/env python
import os.path
 filename = "bestand.py"
 
if not os.path.isfile(filename):
    print 'File does not exist.'
else:
    # Open the file as f. 
    # The function readlines() reads the file.
    with open(filename) as f:
        content = f.read().splitlines()
 
    # Show the file contents line by line.
    # We added the comma to print single newlines and not double newlines.
    # This is because the lines contain the newline character '\n'. 
    for line in content:
        print(line)