当程序运行时,变量是保存数据的好方法,但变量、序列以及对象中存储的数据是暂时的,程序结束后就会丢失,如果希望程序结束后数据仍然保持,就需要将数据保存到文件中。Python 提供了内置的文件对象,以及对文件、目录进行操作的内置模块,通过这些技术可以很方便地将数据保存到文件(如文本文件等)中。

关于文件,它有两个关键属性,分别是“文件名”和“路径”。其中,文件名指的是为每个文件设定的名称,而路径则用来指明文件在计算机上的位置。例如,我的 Windows 7 笔记本上有一个文件名为 projects.docx(句点之后的部分称为文件的“扩展名”,它指出了文件的类型),它的路径在 D:\demo\exercise,也就是说,该文件位于 D 盘下 demo 文件夹中 exercise 子文件夹下。

通过文件名和路径可以分析出,project.docx 是一个 Word 文档,demo 和 exercise 都是指“文件夹”(也称为目录)。文件夹可以包含文件和其他文件夹,例如 project.docx 在 exercise 文件夹中,该文件夹又在 demo 文件夹中。

注意,路径中的 D:\ 指的是“根文件夹”,它包含了所有其他文件夹。在 Windows 中,根文件夹名为 D:\,也称为 D: 盘。在 OS X 和 Linux 中,根文件夹是 /。本教程使用的是 Windows 风格的根文件夹,如果你在 OS X 或 Linux 上输入交互式环境的例子,请用 / 代替。

另外,附加卷(诸如 DVD 驱动器或 USB 闪存驱动器),在不同的操作系统上显示也不同。在 Windows 上,它们表示为新的、带字符的根驱动器。诸如 D:\ 或 E:\。在 OS X 上,它们表示为新的文件夹,在 /Volumes 文件夹下。在 Linux 上,它们表示为新的文件夹,在 /mnt 文件夹下。同时也要注意,虽然文件夹名称和文件名在 Windows 和 OS X 上是不区分大小写的,但在 Linux 上是区分大小写的。

Windows上的反斜杠以及OS X和Linux上的正斜杠

在 Windows 上,路径书写使用反斜杠 “” 作为文件夹之间的分隔符。但在 OS X 和 Linux 上,使用正斜杠 “/” 作为它们的路径分隔符。如果想要程序运行在所有操作系统上,在编写 Python 脚本时,就必须处理这两种情况。

好在,用 os.path.join() 函数来做这件事很简单。如果将单个文件和路径上的文件夹名称的字符串传递给它,os.path.join() 就会返回一个文件路径的字符串,包含正确的路径分隔符。在交互式环境中输入以下代码:

>>> import os
>>> os.path.join(‘demo’, ‘exercise’)
‘demo\exercise’

因为此程序是在 Windows 上运行的,所以 os.path.join(‘demo’, ‘exercise’) 返回 ‘demo\exercise’(请注意,反斜杠有两个,因为每个反斜杠需要由另一个反斜杠字符来转义)。如果在 OS X 或 Linux 上调用这个函数,该字符串就会是 ‘demo/exercise’。

不仅如此,如果需要创建带有文件名称的文件存储路径,os.path.join() 函数同样很有用。例如,下面的例子将一个文件名列表中的名称,添加到文件夹名称的末尾:

import os
myFiles = ['accounts.txt', 'details.csv', 'invite.docx']
for filename in myFiles:print(os.path.join('C:\\demo\\exercise', filename))

运行结果为:

C:\demo\exercise\accounts.txt
C:\demo\exercise\details.csv
C:\demo\exercise\invite.docx

12.1 什么是文件路径,Python中如何书写文件路径?(os.path.join()函数)相关推荐

  1. python路径拼接os.path.join()函数完全教程

    os.path.join()函数用于路径拼接文件路径. os.path.join()函数中可以传入多个路径: 只有一个以"/"开头的参数时,会从第一个以"/"开 ...

  2. python,路径拼接,字符串拼接,os.path.join()函数怎么用?

    一.os.path.join()函数的基本规则 第一步:首先看各个path参数中有无以[盘符:]或[\]开头的字符串(\前面除了[盘符:]不能有其他),如果没有,就会把所有参数保留,参数之间有\分隔. ...

  3. python路径拼接os.path.join()函数和os.makedirs的用法

    python路径拼接os.path.join()函数的用法 os.path.join()函数:连接两个或更多的路径名组件 1.如果各组件名首字母不包含'/',则函数会自动加上 2.如果有一个组件是一个 ...

  4. python路径拼接os.path.join()函数的用法

    os.path.join()函数:连接两个或更多的路径名组件 1.如果各组件名首字母不包含'/',则函数会自动加上 2.如果有一个组件是一个绝对路径,则在它之前的所有组件均会被舍弃 3.如果最后一个组 ...

  5. python路径拼接os.path.join()函数完全教程_详解python路径拼接os.path.join()函数的用法...

    os.path.join()函数:连接两个或更多的路径名组件 1.如果各组件名首字母不共含'/',则函数会自动加上 demo1 import os Path1 = 'home' Path2 = 'de ...

  6. linux用户读取文件过程,Python中读取写入文件并进行文件与用户交互的操作

    一.提前知识点 在Python中是同样和其他语言一样可以进行文件的读取写入操作,值得注意的是,Python中打开文件读取的方式有几种,分别是以下几种: f = open('username.txt') ...

  7. python读取文件夹-Python按顺序读取文件夹中文件

    参考资料: 涉及到文件操作,我们有时候会读取一个文件夹中的所有的文件.这些文件可能是文件名完全混乱的,也可能是完全格式化的(如1.png,2.png...).下面介绍Python中的几种按顺序(假如有 ...

  8. python在读写文件之前需要创建文件对象-python读取或写入文件

    一.创建并读取文本文件 1.该方法需要关闭filereader对象 #!/usr/bin/env python3#读取文件 input_file = "F://python入门//文件//一 ...

  9. glob.glob() + os.path.join() :找到文件路径,拼接路径

    1. glob方法: glob模块的主要方法就是glob,该方法返回所有匹配的文件路径列表(list):该方法需要一个参数用来指定匹配的路径字符串(字符串可以为绝对路径也可以为相对路径),其返回的文件 ...

最新文章

  1. 第二章 在HTML中使用JavaScript
  2. php-mysql管理利器 adminer
  3. 用Jmeter进行接口测试及乱码问题
  4. 8086汇编-做1到100的加法并显示结果
  5. Visual Studio:error MSB8020
  6. Elasticsearch数据库下载
  7. 美物理学家称摩尔定律将在十年内崩溃
  8. 5G 来了,需要更换 SIM 卡吗?
  9. RHEL 6.3的yum不小心被删除了。如何恢复?
  10. 【Hive】Hive 建表语句详解
  11. oracle ogg输出格式,关于OGG同步中日期格式超出正常范围的问题处理
  12. VMware Tools手动安装
  13. ccna路由器部分总结
  14. java md5 c_java MD5加密工具类
  15. 回首过去,展望未来。
  16. 卡券优惠接口对接开发源码
  17. 使用集合转数组的方法,必须使用集合的 toArray(T[] array),传入的是类型完全一样的数组,大小就是 list.size()。
  18. MapReduce中的自定义多目录/文件名输出转
  19. Singer混沌映射(含MATLAB代码)
  20. Android 性能优化(三)布局优化 秒变大神

热门文章

  1. 投资人不可不知的专业术语
  2. 第47件事 幂率法则在产品运营种的应用
  3. 西安:食肉种族的最爱
  4. Cap‘n Proto 介绍(有例子)
  5. 【华为校招】超级高薪曝光!「天才少年」西安交大本科生100万!华科博士201万!...
  6. 音视频开发开发核心知识+新手入门必看基础知识
  7. 初窥Linux神秘面纱(壹):基本指令讲解(上)及疑难解惑(精)
  8. Gridea同步不成功的解决方案
  9. android微信使用62数据免验证,微信62数据提取(非按键写法来个大神转换下!)...
  10. Python | 阿尔法基本语法元素练习题