详谈python在windows中的文件路径问题

yipeiwu_com6年前Python基础

在使用python通过open()函数来打开文件的时候,传递绝对路径给open()的时候,发现路径参数的内容与想象中的有所出入:

由于windows的路径分隔符使用的是反斜杠\,它刚刚好是转义字符,故可能发生冲突

# 错误示范:反斜杠似乎被解释为转义字符而不是分隔字符
path = '''F:\Python\test.txt'''    
path = '''F:\\Python\test.txt'''

"""以下三种方式都是可行的"""
path = '''F:\Python\\test.txt'''
path = '''F:\\Python\\test.txt'''
path = '''F:\Python\\test.txt'''    
'''绝对路径的最后一个反斜杠使用了双反斜杠时就正常'''
'''原因是最后一个反斜杠可以与它紧挨着的字符t构成转义效果'''

结论:使用绝对路径的时候,要注意在绝对路径中使用的反斜杠与它后面紧跟着的字符会不会构成转义效果,如果会产生转义效果,如\t \n \r等等,则必须使用双反斜杠来取消单反斜杠的转义效果。如果产生了转义字符带来的错误,会出现open()提示 "Invalid arguments"

以上这篇详谈python在windows中的文件路径问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python的常用模块之collections模块详解

认识模块  什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀。 但其实import加载的模块分为四个通用类别:  &nb...

详解Django CAS 解决方案

CAS单点登录主要是为了解决主系统和子系统的统一登录问题,能够做到任意一个子系统登录成功后,再登录其他子系统后不再需要认证,让用户不用重复地进行登录认证。CAS单点登录的方案很多,并且大...

Python判断列表是否已排序的各种方法及其性能分析

声明 本文基于Python2.7语言,给出判断列表是否已排序的多种方法,并在作者的Windows XP主机(Pentium G630 2.7GHz主频2GB内存)上对比和分析其性能表现...

修改Python的pyxmpp2中的主循环使其提高性能

引子 之前clubot使用的pyxmpp2的默认mainloop也就是一个poll的主循环,但是clubot上线后资源占用非常厉害,使用strace跟踪发现clubot在不停的poll,...

Python面向对象之类和实例用法分析

本文实例讲述了Python面向对象之类和实例用法。分享给大家供大家参考,具体如下: 类 虽然 Python 是解释性语言,但是它是面向对象的,能够进行对象编程。至于何为面向对象,在此就不...