Jupyter Notebook找不到文件路径怎么办

在使用os库下的listdir函数获取文件夹下面的文件时,老是找不到文件夹中的其中一个文件

img

img

img

可以使用Python的os模块中的listdir函数来获取指定目录下的所有文件名,然后筛选出所有的csv文件,具体实现如下:

import os

input_dir = 'your_folder_path'

# 获取指定目录下的所有文件名
file_names = os.listdir(input_dir)

# 遍历所有文件名
for file_name in file_names:
    # 拼接文件的完整路径
    file_path = os.path.join(input_dir, file_name)
    # 判断是否为csv文件
    if os.path.isfile(file_path) and file_name.endswith('.csv'):
        # 处理csv文件
        with open(file_path, 'r') as f:
            # do something with the csv file

上述代码中,首先使用os.listdir函数获取指定目录下的所有文件名,然后遍历所有文件名,使用os.path.join函数拼接文件的完整路径,然后判断是否为csv文件,如果是csv文件则进行处理。在处理csv文件时,可以使用Python内置的csv模块来读取和处理csv文件。

在Windows系统中,文件夹路径需要使用反斜杠\来表示,因此在指定文件夹路径时需要在文件夹名后加上反斜杠\。例如,如果要指定路径为C:\Users\lee\Desktop\lianjia,则应该写成C:\Users\lee\Desktop\lianjia\。
另外,也可以使用Python中的原始字符串(raw string)来表示文件夹路径,即在路径前加上一个字母r,例如r'C:\Users\lee\Desktop\lianjia'。这样可以避免在路径中使用反斜杠时需要进行转义的问题。

错误主要出现在pd.read_excel(input_dir + file)
你的input_dir没有以"/"结尾,所以导致input_dir + file出来的路径中间少了一个“/”。

要么你修改你的input_dir, 要么使用os.path.join()来组装:


```python
import os
os.path.join(input_dir, file)

```

在Jupyter Notebook中找不到文件路径,通常有以下几个原因:

  1. 路径错误。检查文件路径是否正确,路径是否包含了无效的空白符或其他字符。路径区分大小写,所以也要检查路径的大小写是否正确。
  2. 权限不足。如果文件路径本身不存在访问权限问题,但Jupyter启动用户没有足够权限访问,也会导致路径找不到。可以检查路径所在的文件夹权限,并确保Jupyter用户对其有读取权限。
  3. 路径改变。如果文件路径最近进行了变更,但Jupyter并未更新,那么也会出现路径找不到的问题。重启Jupyter kernel和服务器可以重新加载最新路径。
  4. 路径不是绝对路径。如果输入的文件路径不是绝对路径,Jupyter会基于终端启动所在路径去查找文件。这可能导致路径找不到,要使用绝对路径指向文件。
  5. 环境变量未设置。如果文件路径依赖于环境变量,但Jupyter未能继承或设置环境变量,路径也会找不到。可以在Jupyter中使用魔法命令 %env 显示和设置环境变量。
  6. 路径中使用了未映射的环境变量。如果路径使用了docker等容器技术,环境变量需要映射到Jupyter中才可用。要确保使用的环境变量已经在容器设置中映射。
  7. 服务器问题。如果以上方法均未解决问题,可能是Jupyter服务器本身的路径解析存在问题。可以重启Jupyter服务器,或使用其他方式(如直接使用终端)确认文件路径的可访问性。