在尝试从我的源代码所在的目录打开.txt文件时遇到了一个问题。当我试图像这样打开文件时:
with open("pi_digits.txt") as file_object:
contents = file_object.read()
print(contents)我失败了。在键入整个路径时,我也失败了:
with open("Users\lukas\Documents\python_work\chapter_10") as file_object:
contents = file_object.read()
print(contents)但当我打字时:
with open("\\Users\\lukas\\Documents\\python_work\\chapter_10\\pi_digits.txt") as file_object:
contents = file_object.read()
print(contents)我成功了!
因此,我的问题是:输入以下代码时,为什么不能无错误地运行代码:
with open('pi_digits.txt') as file_object:
contents = file_object.read()
print(contents)谢谢你的回答,如果我的问题没有得到很好的解释,我很抱歉。
发布于 2022-07-17 14:20:28
@Sottvogel
通常,python实例可以从计算机中的许多不同目录中运行。检查正在运行的实例的位置的一种方法是:
import os
os.getcwd()如果确认您位于文件的同一目录中,请尝试查看以下返回的内容:
os.listdir()如果您的文件没有出现在返回的字符串中,那么必须有另一个问题。确保您也签出了文档。
希望能帮上忙!
发布于 2022-07-17 14:14:25
使用路径的问题是,它们是从启动程序的位置(当前的工作目录)引用的,而不是从文件所在的位置引用的。因此,我建议使用os和pathlib包来正确地管理文件路径。
当我输入以下代码时,为什么不能运行代码而没有错误:
这取决于您在哪里执行python代码。
发布于 2022-07-17 14:23:20
在上面构建的基础上,您执行代码的位置意味着您是否需要使用文件名或它的路径。
如果在与txt文件相同的目录中执行Python代码,则可以使用该文件的名称。但是,如果它位于其他地方,则脚本将需要访问该文件,因此需要该文件的路径。
https://stackoverflow.com/questions/73012505
复制相似问题