1

向了解 Python 的神圣人士问好。我目前正在学习 Python 3.4 并且遇到了问题。关于加载功能,即使我以正确的 txtfile 名称使用此功能,也会出现错误。

results = []
with open('text.txt') as inputfile:
    for line in inputfile:
        results.append(line.strip().split(','))

Traceback (most recent call last):
  File "F:/CSSE1001/Assignments/SunMum/030415.py", line 2, in <module>
    with open('stations.txt') as inputfile:
FileNotFoundError: [Errno 2] No such file or directory: 'text.txt'

看起来 Python 找不到 text.txt 的位置。有人可以告诉我如何设置函数的目录吗?谢谢你。

4

1 回答 1

0

您可能正在寻找os.chdir(path)。或者,您可以使用os.path.join(path, *paths)动态构建绝对路径以移交给open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)函数。也可能是您的文件与您的文件 ( )text.txt不在同一目录中。030415.pyF:/CSSE1001/Assignments/SunMum

更新:有几种方法可以加载整个文件。

  • 如果要以文本形式读取文件的所有内容,可以编写data = open('text.txt', 'rt').read()
  • 如果要获取文件的所有二进制数据,可以使用data = open('text.txt', 'rb').read()
  • 如果您想要文件的行,获取它们的简单方法是lines = tuple(open('text.txt', 'rt'))
  • 如果你想要没有换行符的行,你可以输入lines = open('text.txt', 'rt').read().split('\n')
  • 如果您想在避免换行的同时有效地处理这些行,您可以使用for line in (line.strip('\n') for line in open('text.txt', 'rt')):启动一个 for 循环。
  • 如果您使用逗号分隔值,您可能应该查看Python 中可用的csv模块的文档。
于 2015-04-03T13:39:37.497 回答