什么是文件路径,Python中如何书写文件路径?
2年前 (2024-04-27)
当程序运行时,变量是保存数据的好方法,但变量、序列以及对象中存储的数据是暂时的,程序结束后就会丢失,如果希望程序结束后数据仍然保持,就需要将数据保存到文件中。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 驱动器或 U 闪存驱动器),在不同的操作系统上显示也不同。在 Windows 上,它们表示为新的、带字符的根驱动器。诸如 D:\ 或 E:\。在 OS X 上,它们表示为新的文件夹,在 /Volumes 文件夹下。在 Linux 上,它们表示为新的文件夹,在 /mnt 文件夹下。同时也要注意,虽然文件夹名称和文件名在 Windows 和 OS X 上是不区分大小写的,但在 Linux 上是区分大小写的。
好在,用 os.path.join() 函数来做这件事很简单。如果将单个文件和路径上的文件夹名称的字符串传递给它,os.path.join() 就会返回一个文件路径的字符串,包含正确的路径分隔符。在交互式环境中输入以下代码:
不仅如此,如果需要创建带有文件名称的文件存储路径,os.path.join() 函数同样很有用。例如,下面的例子将一个文件名列表中的名称,添加到文件夹名称的末尾:
关于文件,它有两个关键属性,分别是“文件名”和“路径”。其中,文件名指的是为每个文件设定的名称,而路径则用来指明文件在计算机上的位置。例如,我的 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 驱动器或 U 闪存驱动器),在不同的操作系统上显示也不同。在 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
- 随机文章
- 核心危机(核心危机魔石合成攻略)
- 风儿(风儿轻轻的吹)
- 儿童教育文章(儿童教育)
- 光遇花手先祖位置(安卓光遇手花先祖)
- 广州4a广告公司(广州4a广告公司创意总监年薪)
- 抖音卡(抖音卡顿怎么解决)
- 兵马俑(兵马俑介绍和历史背景)
- 陈武简历
- 帆船比赛(帆船比赛视频)
- 海猫鸣泣之时游戏(海猫鸣泣之时游戏在哪玩)
- 韩国媳妇和小雪(韩国媳妇和小雪的父亲工资是多少)
- 鬼泣5攻略(鬼泣5攻略第三关怎么跳)
- 地球日主题(2020年世界地球日主题)
- 和柳亚子(和柳亚子先生于田)
- 冰客(冰客果汁)
- 国外成人游戏(国外成人游戏注册需要visa信用卡)
- 充值卡代理(充值卡代理加盟)
- 拆奶罩
- 郭妮小说(恶魔的法则郭妮小说)
- 东天目山(东天目山景区)
- 蝙蝠给人类的一封信(蝙蝠给人类的一封信)
- 大松电饭煲(美的大松电饭煲)
- 服饰加盟(服饰加盟店招商)
- 点对点短信息(点对点短信息费是什么意思)
- 观音普门品(观音普门品念诵全文)
- 哈利波特官网(哈利波特官网在哪里)
- 骇客神条(骇客神条怎么辨别真假)
- 杜星霖(杜星霖图片)
- 查传倜(查传倜个人生活)
- 广州晓港公园(广州晓港公园正门图片)
