萌新小白YXY 2020-06-16 10:06 采纳率: 66.7%
浏览 362
已采纳

python转义字符替换问题?

我的问题是我想把这两部分拼起来作为open的绝对路径,但是这样是无法完成而且还会报错

path = 'D:\python_project\book\ten\'
files = 'pi_digits.txt'
nm = path+files
with open(nm) as name:
    contents = name.read()
    print(contents.rstrip())

我尝试过,下面这种是可以的,又或者在字符串前加r

# path = 'D:\\python_project\\book\\ten\\'
# files = 'pi_digits.txt'
# nm = path+files
# with open(nm) as name:
#     contents = name.read()
#     print(contents.rstrip())

在上面的基础上,我试了试以下方法,有两个问题,一个是转义原始字符打印出来是'D:\python_project\x08ook\ten',其二这样替换会直接报错

eval(repr(path).replace('\', '\\'))

希望大佬能提供给我一个解决方法,谢谢各位大佬了

  • 写回答

3条回答 默认 最新

  • mollpppp 2020-06-16 17:03
    关注

    python中自带的库os有一个属性os.path.sep,表示当前系统使用的分隔符(自动识别当前系统使用的路径分隔符)。
    dirname+os.path.sep+filename 会自动拼接成可用的文件路径

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 如何在3D高斯飞溅的渲染的场景中获得一个可控的旋转物体
  • ¥88 实在没有想法,需要个思路
  • ¥15 MATLAB报错输入参数太多
  • ¥15 python中合并修改日期相同的CSV文件并按照修改日期的名字命名文件
  • ¥15 有赏,i卡绘世画不出
  • ¥15 如何用stata画出文献中常见的安慰剂检验图
  • ¥15 c语言链表结构体数据插入
  • ¥40 使用MATLAB解答线性代数问题
  • ¥15 COCOS的问题COCOS的问题
  • ¥15 FPGA-SRIO初始化失败