0Pricing
Python Academy · 课时

Path 对象

以现代方式构建路径

Path 对象 是 CoddyKit 上的免费 Python Academy 课时。 这是第 1 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Python Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Python Academy 课程共包含 4 节课。

使用路径库处理现代路径

路径库模块会将文件系统路径表示为对象,而不是普通字符串。Path 对象知道如何拼接、拆分和检查自身,可以替代许多分散的 os.path 函数。

创建路径

导入 Path,并从字符串构造一个路径。打印它时会显示路径文本。

from pathlib import Path

p = Path('folder/file.txt')
print(p)

使用 / 运算符拼接

斜杠运算符可以拼接路径部分。它比字符串连接易读得多,并且能够在每种 OS 上正确处理分隔符。

from pathlib import Path

base = Path('data')
full = base / 'reports' / 'march.txt'
print(full)

名称、主干和后缀

路径会将各个部分公开为属性:name 是最后一个组成部分,stem 会去掉扩展名,而 suffix 就是扩展名。

from pathlib import Path

p = Path('data/report.csv')
print(p.name)
print(p.stem)
print(p.suffix)

父目录

parent 属性会以另一个 Path 的形式给出所在目录。您可以连续访问它来向上移动。

from pathlib import Path

p = Path('a/b/c/file.txt')
print(p.parent)
print(p.parent.parent)

所有部分

parts 属性会返回包含每个组件的元组,便于遍历路径的各个部分。

from pathlib import Path

p = Path('usr/local/bin')
print(p.parts)

更改扩展名

with_suffix() 会返回扩展名不同的新路径,而 with_name() 会替换最后的整个组件。

from pathlib import Path

p = Path('report.txt')
print(p.with_suffix('.md'))
print(p.with_name('summary.txt'))

当前目录和主目录

类方法 Path.cwd() 和 Path.home() 分别返回当前工作目录和用户的主目录。

from pathlib import Path

print(type(Path.cwd()))
print(type(Path.home()))

检查是否存在及类型

使用 exists()、is_file() 和 is_dir() 查询文件系统。路径不存在时,它们会返回布尔值而不会引发错误。

from pathlib import Path

p = Path('definitely_not_here_12345.txt')
print(p.exists())
print(p.is_file())
print(p.is_dir())

需要时将路径转换为字符串

大多数文件函数都可以直接接受 Path 对象。只有确实需要字符串时,才将其传给 str()。

from pathlib import Path

p = Path('data') / 'file.txt'
text = str(p)
print(text)
print(type(text))

以跨平台为设计目标

Path 会自动使用运行所在操作系统的正确分隔符。您只需使用 / 进行拼接,同一段代码就能在 Linux、macOS 和 Windows 上生成正确的路径。

from pathlib import Path

p = Path('config') / 'settings' / 'app.ini'
print(p)
print(p.name)

快速检查

/ 运算符用于 Path 对象时会执行什么操作?

回顾

您已经学会了以现代方式构建路径。

  • Path 将文件系统路径表示为对象。
  • 使用 / 进行拼接;使用 name、stem、suffix、parent 和 parts 进行检查。
  • with_suffix 和 with_name 用于派生新路径。
  • 使用 exists、is_file 和 is_dir 检查文件系统。

常见问题解答

「Path 对象」课时是免费的吗?

是的 — 「Path 对象」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Python Academy 课程的其余内容,请升级到 CoddyKit PRO。 Python Academy 课程共包含 4 节课。

「Path 对象」这节课中我会学到什么?

以现代方式构建路径 你通过在浏览器中直接运行的动手代码来练习 Python Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。

学习 Python Academy 需要有经验吗?

无需任何先前经验。CoddyKit 上的 Python Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 1 节课,共 4 节。

「Path 对象」课时需要多长时间?

大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。

我能在这节 Python Academy 课中编写并运行代码吗?

能。每节 Python Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。

此课程中的所有课时

  1. Path 对象
  2. 读取和写入文件
  3. 通配查找与迭代
  4. 路径操作
← 返回 Python Academy