因此,我正在编写需要导入文件的代码。 python代码文件和我需要导入的文件都在同一目录中,因此我没有指定完整路径。
该代码在IDLE中工作正常,但在Visual Studio代码中出现错误
我添加了这一行 “打印(很少)” 检查它是否在IDLE中工作。它会打印出来。
import random
infile=open("StatesANC.txt","r")
print("few")
我在Visual Studio中收到的错误如下:-
Traceback (most recent call last):
File "f:/SKKU/study/ISS3178 - Python/11/Lab Assignment 11.py", line 2, in <module>
infile=open("StatesANC.txt","r")
FileNotFoundError: [Errno 2] No such file or directory: 'StatesANC.txt'
答案 0 :(得分:0)
给出完整的路径,它应该随处可见
假设您正在使用linux系统,并且文件位于家庭的xyz文件夹中
import random
infile=open("/home/xyz/StatesANC.txt","r")
print("few")
答案 1 :(得分:0)
正如其他人指出的那样,问题在于IDLE和Visual Studio Code的默认工作目录可能不同。
一种测试方法是在脚本的开头添加以下内容:
import os
cwd = os.getcwd()
print(cwd)
如果确实如此,则可以使用以下命令将工作目录更改为脚本之一(其文件路径存储在特殊变量__file__
中)
import os
script_path = os.path.dirname(os.path.abspath(__file__))
os.chdir(script_path)
此代码应在打开文件之前放置。
答案 2 :(得分:0)
假设文本文件与python文件位于同一目录中,则您应该能够执行以下操作:
import random
import os
file_name = "StatesANC.txt"
basedir = os.path.dirname(os.path.abspath(__file__))
file_path = os.path.join(basedir, file_name)
infile=open(file_path,"r")
print("few")
答案 3 :(得分:0)
在open(r"/rootpath/subpath/StatesANC.txt","r")
上放置绝对路径,可能文件StatesANC.txt不在路径f:/SKKU/study/ISS3178 - Python/11/
上。