Python 打开文件夹时VS代码如何处理文件位置?
我正在处理一个项目,其中我引用的文件与我的Python 打开文件夹时VS代码如何处理文件位置?,python,visual-studio-code,Python,Visual Studio Code,我正在处理一个项目,其中我引用的文件与我的palindromes.py文件位于同一文件夹中: import load_dictionary word_list = load_dictionary.load('words.txt') pali_list = [] for word in word_list: if len(word) > 1 and word[:] == word [::-1]: pali_list.append(word) print(f'\
palindromes.py
文件位于同一文件夹中:
import load_dictionary
word_list = load_dictionary.load('words.txt')
pali_list = []
for word in word_list:
if len(word) > 1 and word[:] == word [::-1]:
pali_list.append(word)
print(f'\nNumber of palindromes found = {len(pali_list)}')
print(*pali_list, sep='\n')
当我在该文件夹中打开VS代码时,代码运行正常:
但是,如果我在目录树的较高位置打开VS代码,然后向下导航,则会得到“未找到文件”,除非我使用完整路径:
这就是它的工作原理吗?我本以为(只要我在树结构的正确文件夹中),Python就会知道在该文件夹中运行 在乞讨处尝试使用“.”。例如:
word_list = load_dictionary.load('./02_finding_palingram_spells/words.txt')
在乞讨处用“.”试试。例如:
word_list = load_dictionary.load('./02_finding_palingram_spells/words.txt')
根据您执行代码的方式,您当前的工作目录将设置在工作区的顶部,因此Python认为您是从
学习Python
开始工作,而不是从02_finding_palingram_拼写
开始工作。如果您使用的是Python 3,则可以执行以下操作:
导入操作系统
导入路径库
word\u path=pathlib.path(\uuuuu spec\uuuu.origin).parent/“words.txt”
word\u list=load\u dictionary.load(os.fspath(word\u path))
根据您执行代码的方式,您当前的工作目录将设置在工作区的顶部,因此Python认为您是从学习Python
,而不是02\u查找\u排列图\u拼写
。如果您使用的是Python 3,则可以执行以下操作:
导入操作系统
导入路径库
word\u path=pathlib.path(\uuuuu spec\uuuu.origin).parent/“words.txt”
word\u list=load\u dictionary.load(os.fspath(word\u path))
完美!非常感谢。完美的非常感谢。