python【系列教程】之文件I/O
【摘要】
一、使用pathlib模块操作目录
from pathlib import * # 创建PurePath,实际上使用PrueWindowsPathpp = PurePath('setup.py')print(type(pp)) pp = PurePath('crazyit', 'some/path', 'info')# 看到windows风格的路径pr...
一、使用pathlib模块操作目录
-
-
from pathlib import *
-
-
# 创建PurePath,实际上使用PrueWindowsPath
-
pp = PurePath('setup.py')
-
print(type(pp))
-
-
pp = PurePath('crazyit', 'some/path', 'info')
-
# 看到windows风格的路径
-
print(pp)
-
# 看到windows风格的路径
-
pp = PurePath(Path('crazyit'), Path('info'))
-
print(pp)
-
# 看到输出unix风格的路径
-
pp = PurePosixPath('crazyit', 'some/path', 'info')
-
print(pp)
-
# 如果不传入参数,默认使用当前路径
-
pp = PurePath()
-
print(pp)
-
# 如果传入的参数包含多个根路径,则只有最后一个根路径及后面的子路径生效
-
pp = PurePosixPath('/etc', '/user', 'lib64')
-
print(pp)
-
pp = PurePosixPath('c:Windows', 'd:info')
-
print(pp)
-
-
pp = PurePosixPath('c:Windows','/Programme Files')
-
print(pp)
-
-
pp = PurePath('foo//bar')
-
print(pp)
-
-
pp = PurePath('foo/./bar')
-
print(pp)
-
-
pp = PurePath('foo/../bar')
-
print(pp)
-
-
-
"""
-
输出内容:
-
<class 'pathlib.PureWindowsPath'>
-
crazyit\some\path\info
-
crazyit\info
-
crazyit/some/path/info
-
.
-
/user/lib64
-
c:Windows/d:info
-
/Programme Files
-
foo\bar
-
foo\bar
-
foo\..\bar
-
"""
-
-
Path是 PurePath的子类,它除了支持PurePath的各种操作,属性和方法之外,还会真正的访问底层的文件系统,包括判断Path对应的路径是否存在,获取Path对应路径的各种属性,如是否只读,是文件还是文件夹等,甚至可以对文件进行读写。
-
#获取当前目录下的所有文件和子目录
-
p=Path(".")
-
for x in p.iterdir():
-
print(x)
-
#获取上级目录及其子目录下的.py文件
-
p = Path('../')
-
for x in p.glob('**/*.py'):
-
print(x)
-
#获取g:/publish/codes对应的目录
-
p = Path('g:/publish/codes')
-
for x in p.glob('**/Path_test1.py'):
-
print(x)
-
from pathlib import *
-
-
p = Path('./load.py')
-
result = p.write_text("""有一个美丽的世界他在远方等我
-
""", encoding='UTF8')
-
print(result) #返回输入到文件的字符的个数
-
-
content = p.read_text(encoding='UTF8')
-
print(content) #返回整个文件的内容,也就是刚刚输出的内容
二、使用os.path操作目录
-
import os
-
import time
-
#获取绝对路径
-
print(os.path.abspath('abc.txt'))
-
#获取共同前缀名
-
print(os.path.commonprefix(['/usr/lib','/usr/local/lib'])) #/usr/l
-
#获取共同路径
-
print(os.path.commonpath(['/usr/lib','/usr/local/lib'])) #\usr
-
#获取目录
-
print(os.path.dirname('abc/xyz/Redme.txt')) #abc/xyz
-
#判断指定目录是否存在
-
print(os.path.exists('abc/xyz/Redme.txt')) #False
-
# 获取最近一次访问时间
-
print(time.ctime(os.path.getatime('os.path_test.py')))
三、使用fnmatch处理文件名匹配
四、打开文件
缓冲
五、读取文件
六、写文件
七、os模块的文件和目录函数
八、使用tempfile模块生成临时文件和目录
文章来源: blog.csdn.net,作者:血煞风雨城2018,版权归原作者所有,如需转载,请联系作者。
原文链接:blog.csdn.net/qq_31905135/article/details/101014410
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)