8.1.2 纯路径操作

纯路径操作对象提供了一些操作路径的功能,但不会访问文件系统的功能。主要提供下面三个类对象:

class pathlib.PurePath(*pathsegments) 

创建一个通用表示文件路径的类。

例子:

#python 3.4

from pathlib import *

 

p = PurePath('F:\\temp\\py')

print(p)

p = PurePath('foo', 'some/path', 'bar')

print(p)

p = PurePath(Path('foo'), Path('bar'))

print(p)

结果输出如下:

F:\temp\py

foo\some\path\bar

foo\bar

 

class pathlib.PurePosixPath(*pathsegments) 

它是PurePath的子类,提供了对非Windows系统的路径操作。

例子:

#python 3.4

from pathlib import *

 

p = PurePosixPath('/py')

print(p)

结果输出如下:

/py

 

class pathlib.PureWindowsPath(*pathsegments) 

它是PurePath的子类,提供了对Windows系统的路径操作。

例子:

#python 3.4

from pathlib import *

 

p = PureWindowsPath('c:/py')

print(p)

结果输出如下:

c:\py

 

以上几个类,无论在什么操作系统上都可以使用,因为它们都不会调用操作系统的系统调用功能。

路径对象是不可改的对象,并且是可以HASH的对象,因此路径对象是可以进行比较和排序的操作。

例子:

#python 3.4

from pathlib import *

 

p = PureWindowsPath('c:/py') == PureWindowsPath('c:/PY')

print(p)

p = PureWindowsPath('FOO') in { PureWindowsPath('foo') }

print(p)

p = PureWindowsPath('C:') < PureWindowsPath('d:')

print(p)

结果输出如下:

True

True

True

但不同的系统路径对象是不能进行比较的,比如PureWindowsPath对象不能与PurePosixPath对象进行比较。

 

PurePath.parts 

独立地访问路径每一部分,返回一个元组。

例子:

#python 3.4

from pathlib import *

 

p = PurePath('/usr/bin/python3')

print(p)

print(p.parts)

p = PureWindowsPath('c:/blog.csdn.net/caimouse')

print(p.parts)

结果输出如下:

\usr\bin\python3

('\\', 'usr', 'bin', 'python3')

('c:\\', 'blog.csdn.net', 'caimouse')



蔡军生  QQ:9073204  深圳

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

caimouse

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值