🐍 Python 在 Windows 环境下的文件路径问题

在 Python 程序中,我们经常需要对文件进行操作。在 Windows 下,文件目录路径使用反斜杠"\"来分隔。然而,在 Python 代码中,反斜杠"\"是转义符,例如"\n"表示换行符、"\t"表示制表符。这样,如果继续使用"\"表示文件路径,就会产生歧义。

❓ 示例问题

例如:

python 复制代码
path = "c:\test.txt"

这个路径表示的是 C 盘根目录下的一个文件,还是表示一个字符串呢?因为"\t"也可以解释为制表符。如果让我们人来判断,这当然是一个很简单的问题。但是机器无法做出正确的判断,只有没有歧义的代码机器才会正确执行。

💡 解决办法

采用下面任何一种书写形式均可:

  1. 使用斜杠"/" (推荐)

    python 复制代码
    path = "c:/test.txt"

    这样就没有歧义了。

  2. 将反斜杠符号转义

    python 复制代码
    path = "c:\\test.txt"

    因为反斜杠是转义符,所以两个"\"表示一个反斜杠符号。

  3. 使用 Python 的 raw string

    python 复制代码
    path = r"c:\test.txt"

    在字符串前面加上字母"r",表示后面是一个原始字符串(raw string)。不过 raw string 主要是为正则表达式设计的,而不是 Windows 路径,所以这种做法尽量少用,可能会出问题。

相关推荐
得一录几秒前
Python 算法高级篇:布谷鸟哈希算法与分布式哈希表
python·算法·aigc·哈希算法
Faker66363aaa4 分钟前
基于Cascade-Mask-RCNN和RegNetX-4GF的果蝇检测与识别系统——COCO数据集训练与优化
python
聂 可 以6 分钟前
解决Pycharm中(Python)软件包下载速度很慢、甚至下载失败的问题
ide·python·pycharm
七夜zippoe7 分钟前
强化学习实战指南:从Q-Learning到PPO的工业级应用
python·openai·超参数调优·q-learning·mdp
JaydenAI10 分钟前
[拆解LangChain执行引擎]非常规Pending Write的持久化
python·langchain
MoonPointer-Byte10 分钟前
【Python实战】我开发了一款“诗意”待办软件:MoonTask(附源码+工程化思路)
开发语言·python·custom tkinter
~央千澈~11 分钟前
抖音弹幕游戏开发之第11集:礼物触发功能·优雅草云桧·卓伊凡
java·前端·python
程序员徐师兄15 分钟前
Python 基于深度学习的电影评论可视化系统
python·深度学习·深度学习的电影评论可视化系统·深度学习评论情感分析
喵手16 分钟前
Python爬虫实战:容错的艺术 - 基于错误分级的自适应重试与退避机制实战
爬虫·python·爬虫实战·容错·零基础python爬虫教学·错误分级·退避机制
程序员徐师兄19 分钟前
基于 Python 深度学习的电影评论情感分析算法
python·深度学习·算法·电影情感分析算法·评论情感分析