飘云阁

 找回密码
 加入我们

QQ登录

只需一步,快速开始

查看: 1244|回复: 3

[Python] 关于Python文件路径的疑惑

[复制链接]
  • TA的每日心情
    开心
    2024-5-27 23:24
  • 签到天数: 300 天

    [LV.8]以坛为家I

    发表于 2024-5-14 13:54:35 | 显示全部楼层 |阅读模式
    本帖最后由 心妍 于 2024-5-14 13:53 编辑

    我也是偶然发现的一个问题 求各位大佬解惑

    在Python中 文件路径这样写是错的 我们都知道
    [Python] 纯文本查看 复制代码
    f = open('C:\Users\Administrator\readme.txt')
    以下三种写法都是对的 这我们也知道
    [Python] 纯文本查看 复制代码
    f = open(r'C:\Users\Administrator\readme.txt')
    f = open('C:\\Users\\Administrator\\readme.txt')
    f = open('C:/Users/Administrator/readme.txt')
    但是 如果像下面这样写的话 会出现两种情况

    情况一 本来都应该是正斜杠的 但是因为失误 造成了其中的某个反斜杠没有被替换 最神奇的是 运行也能成功 不会出现报错

    [Python] 纯文本查看 复制代码
    f = open('C:/Users\Administrator/readme.txt')
    情况二 但如果是这样写的话 就会报错(跟上一行代码相比 反斜杠的位置出现了变化)
    [Python] 纯文本查看 复制代码
    f = open('C:\Users/Administrator/readme.txt')
    不知道报错具体是啥原因 就有点疑惑
    PYG19周年生日快乐!
  • TA的每日心情

    11 小时前
  • 签到天数: 136 天

    [LV.7]常住居民III

    发表于 2024-5-14 22:33:21 | 显示全部楼层
    本帖最后由 lsj8924 于 2024-5-15 12:56 编辑


    [AppleScript] 纯文本查看 复制代码
    # 重点不是/或者\ ,而是\会转义。\U 代表输入uicode编码 \x代表utf8编码。其他转义\t \n等同理。所以路径只要避免[U u X x t n...]等转义字符就可以。
    # 如果非要正面硬杠,使用\u 和 \x 也不是不行,但是一般人不这么干。
    f = open('C:\\\x55sers/Administrator/readme.txt')
    f = open('C:\\\U00000055sers/Administrator/readme.txt')
    f = open('C:/\x55sers/Administrator/readme.txt')
    f = open('C:/\u0055sers/Administrator/readme.txt')

    点评

    第一次见到这种写法 涨见识了  详情 回复 发表于 2024-5-15 14:11
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-5-27 23:24
  • 签到天数: 300 天

    [LV.8]以坛为家I

     楼主| 发表于 2024-5-15 14:11:13 | 显示全部楼层
    lsj8924 发表于 2024-5-14 22:33
    [mw_shl_code=applescript,true]# 重点不是/或者\ ,而是\会转义。%u 代表输入uicode编码 \x代表utf8编码 ...

    第一次见到这种写法 涨见识了
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2024-6-8 08:11
  • 签到天数: 20 天

    [LV.4]偶尔看看III

    发表于 2024-5-17 17:03:55 | 显示全部楼层
    杠杠  反斜杠 学习了
    PYG19周年生日快乐!
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 加入我们

    本版积分规则

    快速回复 返回顶部 返回列表