分析Python读取文件时的路径问题

yipeiwu_com6年前Python基础

Python在读取文件内容时的路径问题,值得深究一下.我想讨论的重点还是在绝对路径上面.在这之前我们先看一下

1:相对路径


这张图演示了在相对路径下寻找查找指定文件.  open('相对路径演示'\'相对路径示例'.txt)打开的是相对当前运行的程序所在目录。 而我当前运行的程序相对位置在桌面. 所以直接print(lines) 可以看到这个结果

2:绝对路径.

绝对路径的查找方法就不演示了,相信每个人都会找到。但是我想讨论的是几个关于路径中的编码问题,相信这对初学者们有很大的帮助.

2.1:你会发现你直接粘贴下来的路径在Windows上面用不了.例如下面这样.


这就是编码问题,对于初学者,咱们先不讨论什么是编码问题,留点悬念,到最后你了解了之后,就会恍然大悟.那我们看看怎么解决这个问题.

在C:\后面加一个反斜杠即可

2.2: 你会发现你有时候修改了之后还是会出现编码问题,例如下面这样:


这样的问题是因为 有时候Windows能正确解读你文件中的路径问题,而有时候就不能.  因为反斜杠是转义字符,和大多数语言一样.   而在整个路径的字符串前面加 r 后可以在程序运行后只把反斜杠当做一个普通字符来用,也就解决了问题.

2.3.  是不是觉得斜杠在Windows上用不了??? 看看下面这张图,你就会发现新新大陆...

具体的原因不太清楚,感谢大家对【听图阁-专注于Python设计】的支持。等待后续的内容补充。

相关文章

Python中的__SLOTS__属性使用示例

看python社区大妈组织的内容里边有一篇讲python内存优化的,用到了__slots__。然后查了一下,总结一下。感觉非常有用 python类在进行实例化的时候,会有一个__dict...

Sanic框架流式传输操作示例

本文实例讲述了Sanic框架流式传输操作。分享给大家供大家参考,具体如下: 简介 Sanic是一个类似Flask的Python 3.5+ Web服务器,它的写入速度非常快。除了Flask...

python创建子类的方法分析

本文实例讲述了python创建子类的方法。分享给大家供大家参考,具体如下: 如果你的类没有从任何祖先类派生,可以使用object作为父类的名字。经典类的声明唯一不同之处在于其没有从祖先类...

使用python实现数组、链表、队列、栈的方法

使用python实现数组、链表、队列、栈的方法

引言 什么是数据结构? 数据结构是指相互之间存在着一种或多种关系的数据元素的集合和该集合中数据元素之间的关系组成。 简单来说,数据结构就是设计数据以何种方式组织并存储在计算机中...

对Python中9种生成新对象的方法总结

先定义一个类: class Point: def __init__(self, x, y): self.x = x self.y = y 下面我们使用9种方法来生...