萌新小白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 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误