请教大家文件在文件夹里,但运行时显示报错找不到怎么办?FileNotFoundError: [Errno 2] No such file or directory:

最近在学习tf-idf,在练习的时候发现‘文件”stopwords.txt“’在‘文件夹corpus’里面,但在python运行时,却出现了错误FileNotFoundError: [Errno 2] No such file or directory,这种怎么解决?

这是原代码:


import math
import jieba

# 设置文件根目录
root = " "

# 引入停用词
with open(root+"stopwords.txt", 'r', encoding='utf-8') as stoptext:
    stopword = stoptext.read()

这是我运行的代码:

import math
import jieba

# 设置文件根目录
root = "/Users/wangshuaiqi/Desktop/pythonProject10/twelve/corpus"

# 引入停用词
with open(root+"stopwords.txt", 'r', encoding='utf-8') as stoptext:
    stopword = stoptext.read()

这是报错情况:

/Users/wangshuaiqi/Desktop/pythonProject10/bin/python /Users/wangshuaiqi/PycharmProjects/pythonProject10/main.py 
Traceback (most recent call last):
  File "/Users/wangshuaiqi/PycharmProjects/pythonProject10/main.py", line 8, in <module>
    with open(root+"stopwords.txt", 'r', encoding='utf-8') as stoptext:
FileNotFoundError: [Errno 2] No such file or directory: '/Users/wangshuaiqi/Desktop/pythonProject10/twelve/corpusstopwords.txt'

img

你的路径后面少了一个路径分隔符/ 导致你最后面的两个名称黏在一起了:

img


修改如下:

# 设置文件根目录
root = "/Users/wangshuaiqi/Desktop/pythonProject10/twelve/corpus/"

不知道你这个问题是否已经解决, 如果还没有解决的话:
  • 以下回答来自chatgpt:

    抱歉,没有明确的问题描述,我无法提供解决方案。请提供具体的问题,我会尽力帮助您解决。


如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^

该回答通过自己思路及引用到GPTᴼᴾᴱᴺᴬᴵ搜索,得到内容具体如下:
您的代码中使用了相对路径 "stopwords.txt",但实际上您的文件夹结构中存在一个子文件夹 "corpus",因此需要在路径中加上子文件夹的名称。

您可以将 root 的值修改为 "./corpus/",表示相对路径下的 "corpus" 文件夹,然后在打开文件时指定文件名为 "stopwords.txt"

修改后的代码应该如下所示:

import math
import jieba

# 设置文件根目录
root = "./corpus/"

# 引入停用词
with open(root + "stopwords.txt", 'r', encoding='utf-8') as stoptext:
    stopword = stoptext.read()

这样修改后,您的代码应该就能成功读取 "stopwords.txt" 文件了。


如果以上回答对您有所帮助,点击一下采纳该答案~谢谢