You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python实现:如何获取带完整单斜杠路径的文件名列表

解决Python生成路径列表时双反斜杠转单斜杠的问题

首先得跟你说清楚:你在控制台看到的双反斜杠\\,其实只是Python对字符串中转义字符的显示方式——你的字符串里实际已经是单个反斜杠\了。但如果确实需要输出的列表呈现单斜杠的格式(比如用于展示、写入文件等场景),我们可以调整代码来实现。

优化后的代码方案

推荐使用os.path.join来拼接路径(跨平台且避免手动拼接的错误),再根据需求处理路径的显示:

import os
from os import listdir
from os.path import isfile, join

# 获取当前脚本所在目录
dir_path = os.path.dirname(os.path.realpath(__file__))
print(dir_path)  # 打印当前脚本路径

# 获取当前工作目录
cwd = os.getcwd()
full_paths = []

# 筛选当前目录下的文件
onlyfiles = [f for f in listdir(cwd) if isfile(join(cwd, f))]

for filename in onlyfiles:
    # 用os.path.join规范拼接完整路径
    full_path = os.path.join(dir_path, filename)
    # 替换为正斜杠(Windows完全支持正斜杠作为路径分隔符,避免转义问题)
    full_paths.append(full_path.replace('\\', '/'))

# 输出单斜杠格式的路径列表
print(full_paths)

关键说明

  1. 双反斜杠的本质:Python中\是转义字符,所以控制台打印时会用\\表示实际的单个\。如果你只是需要路径能正常被系统识别,其实不需要修改——当前代码生成的路径已经是有效的,只是显示看起来是双反斜杠而已。
  2. 转单斜杠的两种方式:
    • 换成正斜杠:用replace('\\', '/'),这是最省心的方式,Windows系统完全兼容正斜杠路径。
    • 保留反斜杠但显示单斜杠:如果一定要输出C:\Users\...这种格式,可以在打印时直接处理,比如print([path for path in full_paths])其实内部是单斜杠,只是控制台显示双斜杠;如果要写入文件或生成字符串,直接使用即可,文件里会是单斜杠。
  3. 推荐用os.path.join:手动拼接dir_path+"\\"+i容易因为路径末尾是否带斜杠出现错误,os.path.join会自动处理路径分隔符,跨平台更友好。

内容的提问来源于stack exchange,提问作者Anuj

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.09 06:32:48