[PY3]——IO——pathlib

# pathlib.Path()

from pathlib import Path
p=Path("/test2")

# Path.cwd()

print(p.cwd())
/py3

# Path.home()

print(p.home())
/root

# Path.iterdir()

print(list(p.iterdir()))
[PosixPath(‘/test2/p.py‘), PosixPath(‘/test2/aa.txt‘), PosixPath(‘/test2/bb‘)]

# Path.stat()

print(p.stat())
 s.stat_result(st_mode=16804, st_ino=296353, st_dev=2053, st_nlink=3, st_uid=500, st_gid=500, st_size=4096, st_atime=1503619754, st_mtime=1503523284, st_ctime=1503523284)

# Path.chmod()

print(oct(p.stat().st_mode)[-3:])
644

p.chmod(0o755)

print(oct(p.stat().st_mode)[-3:])
755

# Path.owner()

print(p.owner())
user00

# Path.group()

print(p.group())
user00

# Path.glob(pattern)

print(list(p.glob("*.py")))
[PosixPath(‘/test2/p.py‘)]

print(list(p.glob(‘**/*.py‘)))
[PosixPath(‘/test2/p.py‘), PosixPath(‘/test2/bb/p2.py‘)]

# Path.rglob(pattern)

print(list(p.rglob(‘*.py‘)))
[PosixPath(‘/test2/p.py‘), PosixPath(‘/test2/bb/p2.py‘)]

# Path.expanduser()

p=Path("~/Desktop")
print(p.expanduser())
/root/Desktop

# Path.exists()

print(p.exists())
True

p=Path("/test2_not_exist")print(p.exists())
False

# Path.is_dir() |  is_file()

print(p.is_dir())
True
print(p.is_file())
False

# Path.is_socket() | is_fifo() | is_block_device() | is_char_device() | is_symlink()

# Path.mkdir(mode=0o777, parents=False, exist_ok=False)

p=Path("/test2/test2_tree")
p.mkdir(mode=0o644)
print(p.exists())
True

p=Path("/test2_no_exist/aa")
p.mkdir()
FileNotFoundError: [Errno 2] No such file or directory: ‘/test2_no_exist/aa‘
p.mkdir(parents=True)
print(p.exists())
True

p.mkdir(exist_ok=True)
不会报错

# Path.touch(mode=0o666, exist_ok=True)

p=Path("/test2/no_exits_text")
p.touch(mode=0o755)
print(p.exists())
True
print(oct(p.stat().st_mode)[-3:])
755

# Path.open(mode=’r’, buffering=-1, encoding=None, errors=None, newline=None)

p=Path("/test2/aa.txt")
with p.open() as f:
  print(f.read())

# Path.read_bytes()

print(p.read_bytes())
b‘test content\n2test2 content\n‘

# Path.read_text()

print(p.read_text())
test content
2test2 content

# Path.write_bytes(data)

# Path.write_text(data,encoding=None,errors=None)

# Path.rename(target)p=Path("/test2/test.txt")

p.open("w").write("test content")
target=Path("/test2/test.rename")
p.rename(target)
print(target.open().read())
test content
print(p.exists())
False


# Path.replace(target)

无条件替换

# Path.resolve()

返回绝对路径

# Path.samefile(other_path)

# Path.rmdir()

p=Path("/test2/bb")
p.rmdir()
OSError: [Errno 39] Directory not empty: ‘/test2/bb‘
#只能删除空目录

# Path.symlink_to()

# Path.unlink()

# PurePath.suffix

p=Path("/test2/bb/p2.py")
print(p.suffix)
.py
print(p.suffixes)
[‘.py‘]
时间: 2024-10-11 16:36:15

[PY3]——IO——pathlib的相关文章

[PY3]——IO——文件目录操作

IO—os.shutil—文件目录操作 目录操作 1. 新建 os.mkdir(path[, mode]) 相当于mkdir,新建目录 os.makedirs(path[, mode]) 相当于mkdir -p os.path.exists("/test2") False # os.mkdir( ) 如果父路径不存在,则新建报错 os.mkdir('/test2/abc') FileNotFoundError: [Errno 2] No such file or directory:

重启服务器后Docker容器暴露的端口外网突然访问不了!!

*:first-child { margin-top: 0 !important; } .markdown-body>*:last-child { margin-bottom: 0 !important; } .markdown-body a:not([href]) { color: inherit; text-decoration: none; } .markdown-body .anchor { float: left; padding-right: 4px; margin-left: -2

python运维开发(十)----IO多路复用多线程、进程、协程

内容目录: python作用域 python2.7和python3.5的多继承区别 IO多路复用 多线程.进程.协程 python作用域  python中无块级作用域 if 1 == 1: name = 'jabe' print(name) #可以正常输出jabe #在python中无块级作用域 #在c#或者java中是不能这样使用的,提示name未定义的 python中以函数为作用域 def func(): name = 'jbae' func() print(name) #会提示name为定

io.StringIO

#! /usr/bin/python # -*-coding:'uft-8'-*- from __future__ import print_function #python2使用py3的print方法 import io,sys f=io.StringIO() sys.stdout=f #重定义sys.stdout print(u'hello') #u'hello' write进f ,unicode才能写入f,所以用了u,否则报错 sys.stdout=sys.__stdout__ #sys.

python每日一类(1):pathlib

每天学习一个python的类(大多数都是第三方的),聚沙成金. -------------------------------------------------------------------------------- 今天学习的是:pathlib:(Python3.4+ 标准库)跨平台的.面向对象的路径操作库. 其官方网址为:https://pathlib.readthedocs.io/en/pep428/ 如果只是把path作为string对象来操作,我们会碰到很多很繁琐的操作,因此,

python---爬虫相关性能(各个异步模块的使用,和自定义异步IO模块)

一:线程池,进程池等相关文章了解 python---基础知识回顾(十)进程和线程(py2中自定义线程池和py3中的线程池使用) python---基础知识回顾(十)进程和线程(协程gevent:线程在I/O请求上的优化) python---异步IO(asyncio)协程 二:异步I/O模块的了解(同协程:线程在I/O请求上的优化) (一)asyncio模块的使用 1.使用简单实例 import asyncio,time async def func1(num): print(num,"befor

py2与py3区别总结

1. py2中的str是py3中的bytes py2中的Unicode是py3中的str 2. py2里 import StringIO     StringIO.StringIO() py3里 import io    io.StringIO()  io.BytesIO() 3. py2 里 pip install mysql-python     import MySqldb py3 里 pip install pymysql             import pymysql      

五.Python文件IO和路径操作

目录 Python文件IO操作 上下文管理with 路径操作 01 Python文件IO操作: clumn column open 打开 read 读取 write 写入 close 关闭 readline 行读取 readlines 多行读取 seek 文件指针操作 tell 指针位置 打开文件 open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=No

10.6 监控io性能 - 10.7 free命令 - 10.8 ps命令 - 10.9 查看网络状态 - 10.10 linux下抓包

- 10.6 监控io性能 - 10.7 free命令 - 10.8 ps命令 - 10.9 查看网络状态 - 10.10 linux下抓包 - 扩展tcp三次握手四次挥手 http://www.doc88.com/p-9913773324388.html  - tshark几个用法:http://www.aminglinux.com/bbs/thread-995-1-1.html  # 10.6 监控io性能 ![mark](http://oqxf7c508.bkt.clouddn.com/b