python在windows下文件路径的解决方案

栏目: Python · 发布时间: 6年前

内容简介:在windows下编程,我们经常会遇到路径相关的问题,下面解释下原因,并给出python的解决方案。windows访问文件默认用可以用代码验证:

在windows下编程,我们经常会遇到路径相关的问题,下面解释下原因,并给出 python 的解决方案。

为什么windows的路径在编程时经常会出问题?

windows访问文件默认用 \ 做为路径的分隔符,而 \ 可以作为转义字符。例如, \t , \a 表示一个字符,此时 \ 是转义字符,而 \m 表示两个字符。

可以用代码验证:

>>>len('\t')
>>>1
>>>len('\a')
>>>1
>>>len('\a')
>>>2

好,了解这个后,我们看下windows路径,如果路径中后面刚好是能转义字符,那代码就会识别为转义字符,这就导致路径解析错误。例如"c:\test\t.txt",刚好有'\t',这就被解析为转义字符,路径就会错误。而如果路径为"c:\money\m.xls",这样的话路径就不会解析错误。

可是,我们总不能为此去修改文件名吧,当然有别的办法,下面介绍下解决方案。

如何解决python在windows下的路径问题?

  • 【推荐】不要使用 \ ,直接使用 / ,而且 / 在windows和 linux 下都适用。
'C:/mydir'
  • 用双斜线 \\
'C:\\mydir'
  • 使用raw string的标记r
r'C:\mydir'
  • 【推荐】使用 os.path 模块函数,可以根据操作系统选择正确的路径符
os.path.join('C:', dir1, dir2, myfile)
pathlib.Path(mydir, myfile)

或者

pathlib.Path(mydir) / myfile

参考: https://stackoverflow.com/que...


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C# 6.0本质论

C# 6.0本质论

[美] Mark Michaelis(马克·米凯利斯)、[美] Eric Lippert(埃里克·利珀特) / 周靖、庞燕 / 人民邮电出版社 / 2017-2-1 / 108

这是C#领域中一部广受好评的名作,作者用一种易于理解的方式详细介绍了C#语言的各个方面。全书共有21章和4个附录(其中哟2个附录从网上下载),介绍了C#语言的数据类型、操作符、方法、类、接口、异常处理等基本概念,深入讨论了泛型、迭代器、反射、线程和互操作性等高级主题,还介绍了LINQ技术,以及与其相关的扩展方法、分部方法、Lambda表达式、标准查询操作符和查询表达式等内容。每章开头的“思维导图”......一起来看看 《C# 6.0本质论》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

HEX CMYK 转换工具
HEX CMYK 转换工具

HEX CMYK 互转工具

HEX HSV 转换工具
HEX HSV 转换工具

HEX HSV 互换工具