python3中,os.path模块下常用的用法总结

简介: abspathbasenamedirnameexistsgetatimegetctimegetmtimegetsizeisabsisdirisfileislinkismountjoinrealpathsamefilesameopenfilesplitsplitextabspath返回一个目录的绝对路径Return an absolute path.
abspath
basename
dirname
exists
getatime
getctime
getmtime
getsize
isabs
isdir
isfile
islink
ismount
join
realpath
samefile
sameopenfile
split
splitext

abspath

返回一个目录的绝对路径
Return an absolute path.
>>> os.path.abspath("/etc/sysconfig/selinux")
'/etc/sysconfig/selinux'
>>> os.getcwd()
'/root'
>>> os.path.abspath("python_modu")
'/root/python_modu'

basename

返回一个目录的基名
Returns the final component of a pathname
>>> os.path.basename("/etc/sysconfig/selinux")
'selinux'
>>> os.path.basename("/usr/local/python3/bin/python3")
'python3'

dirname

返回一个目录的目录名
Returns the directory component of a pathname
>>> os.path.dirname("/etc/sysconfig/selinux")
'/etc/sysconfig'
>>> os.path.dirname("/usr/local/python3/bin/python3")
'/usr/local/python3/bin'

exists

测试指定文件是否存在
Test whether a path exists.  Returns False for broken symbolic links
>>> os.path.exists("/home/egon")
False
>>> os.path.exists("/root")
True
>>> os.path.exists("/usr/bin/python")
True

getatime

得到指定文件最后一次的访问时间
Return the last access time of a file, reported by os.stat().
>>> os.stat("/root/test.sh")
os.stat_result(st_mode=33261, st_ino=100684935, st_dev=2050, st_nlink=1, st_uid=0, st_gid=0, st_size=568, st_atime=1498117664, st_mtime=1496629059, st_ctime=1498117696)
>>> os.path.getatime("/root/test.sh")
1498117664.2808378

getctime

得到指定文件最后一次的改变时间
Return the metadata change time of a file, reported by os.stat().
>>> os.stat("/root/test.sh")
os.stat_result(st_mode=33261, st_ino=100684935, st_dev=2050, st_nlink=1, st_uid=0, st_gid=0, st_size=568, st_atime=1498117664, st_mtime=1496629059, st_ctime=1498117696)
>>> os.path.getctime("/root/test.sh")
1498117696.039542

getmtime

得到指定文件最后一次的修改时间
Return the last modification time of a file, reported by os.stat().
>>> os.stat("/root/test.sh")
os.stat_result(st_mode=33261, st_ino=100684935, st_dev=2050, st_nlink=1, st_uid=0, st_gid=0, st_size=568, st_atime=1498117664, st_mtime=1496629059, st_ctime=1498117696)
>>> os.path.getmtime("/root/test.sh")
1496629059.9313989

getsize

得到得到文件的大小
Return the size of a file, reported by os.stat().
>>> os.stat("/root/test.sh")
os.stat_result(st_mode=33261, st_ino=100684935, st_dev=2050, st_nlink=1, st_uid=0, st_gid=0, st_size=568, st_atime=1498117664, st_mtime=1496629059, st_ctime=1498117696)
>>> os.path.getsize("/root/test.sh")
568

isabs

测试参数是否是绝对路径
Test whether a path is absolute
>>> os.path.isabs("python_modu")
False
>>> os.path.isabs("/etc/sysconfig")
True

isdir

测试指定参数是否是目录名
Return true if the pathname refers to an existing directory.
>>> os.path.isdir("/etc/sysconfig/selinux")
False
>>> os.path.isdir("/home")
True

isfile

测试指定参数是否是一个文件
Test whether a path is a regular file
>>> os.path.isfile("/home")
False
>>> os.path.isfile("/etc/sysconfig/selinux")
True

islink

测试指定参数是否是一个软链接
Test whether a path is a symbolic link
>>> os.path.islink("/etc/sysconfig/selinux")
True
>>> os.path.islink("/etc/sysconfig/nfs")
False

ismount

测试指定参数是否是挂载点
Test whether a path is a mount point
>>> os.path.ismount("/mnt/cdrom")
False
以上是未挂载光盘,现在把光盘挂载到/mnt/cdrom下,再进行测试
>>> os.path.ismount("/mnt/cdrom")
True

join

join(a, *p)
将目录名和文件的基名拼接成一个完整的路径
Join two or more pathname components, inserting '/' as needed.
If any component is an absolute path, all previous path components
will be discarded.  An empty last part will result in a path that
ends with a separator.
>>> for filename in os.listdir("/home"):
...     print(os.path.join("/tmp",filename))
... 
/tmp/a
/tmp/f1.txt

realpath

返回指定文件的标准路径,而非软链接所在的路径
Return the canonical path of the specified filename, eliminating any
symbolic links encountered in the path.
>>> os.path.realpath("/etc/sysconfig/selinux")
'/etc/selinux/config'
>>> os.path.realpath("/usr/bin/python")
'/usr/bin/python2.7'

samefile

测试两个路径是否指向同一个文件
Test whether two pathnames reference the same actual file

sameopenfile

测试两个打开的文件是否指向同一个文件
Test whether two open file objects reference the same file

split

分割目录名,返回由其目录名和基名给成的元组
Split a pathname.  Returns tuple "(head, tail)" where "tail" is
everything after the final slash.  Either part may be empty.
>>> os.path.split("/tmp/f1.txt")
('/tmp', 'f1.txt')
>>> os.path.split("/home/test.sh")
('/home', 'test.sh')

splitext

分割文件名,返回由文件名和扩展名组成的元组
Split the extension from a pathname.
Extension is everything from the last dot to the end, ignoring
leading dots.  Returns "(root, ext)"; ext may be empty.
>>> os.path.splitext("/home/test.sh")
('/home/test', '.sh')
>>> os.path.splitext("/tmp/f1.txt")
('/tmp/f1', '.txt')
目录
相关文章
|
10月前
|
机器学习/深度学习 PyTorch 算法框架/工具
python torch基础用法
本教程系统讲解PyTorch基础,涵盖张量操作、自动求导、神经网络构建、训练流程、GPU加速及模型保存等核心内容,结合代码实例帮助初学者快速掌握深度学习开发基础,是入门PyTorch的实用指南。
891 6
|
11月前
|
安全 Python
告别 os.path 的繁琐:拥抱 Python 的 pathlib
告别 os.path 的繁琐:拥抱 Python 的 pathlib
609 6
|
12月前
|
Go 调度 Python
Golang协程和Python协程用法上的那些“不一样”
本文对比了 Python 和 Go 语言中协程的区别,重点分析了调度机制和执行方式的不同。Go 的协程(goroutine)由运行时自动调度,启动后立即执行;而 Python 协程需通过 await 显式调度,依赖事件循环。文中通过代码示例展示了两种协程的实际运行效果。
436 7
|
人工智能 数据库连接 API
掌握Python的高级用法:技巧、技术和实用性示例
本文分享了Python的高级用法,包括生成器、装饰器、上下文管理器、元类和并发编程等。生成器通过`yield`实现懒加载序列;装饰器用于增强函数功能,如添加日志或性能分析;上下文管理器借助`with`语句管理资源;元类动态定制类行为;并发编程利用`threading`和`asyncio`库提升任务执行效率。掌握这些高级概念可优化代码质量,解决复杂问题,提高程序性能与可维护性。
369 6
|
Python
Python教程:os 与 sys 模块详细用法
os 模块用于与操作系统交互,主要涉及夹操作、路径操作和其他操作。例如,`os.rename()` 重命名文件,`os.mkdir()` 创建文件夹,`os.path.abspath()` 获取文件绝对路径等。sys 模块则用于与 Python 解释器交互,常用功能如 `sys.path` 查看模块搜索路径,`sys.platform` 检测操作系统等。这些模块提供了丰富的工具,便于开发中处理系统和文件相关任务。
618 14
|
SQL Oracle 关系型数据库
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
【YashanDB知识库】共享利用Python脚本解决Oracle的SQL脚本@@用法
|
安全 Linux 数据安全/隐私保护
Vanilla OS:下一代安全 Linux 发行版
【10月更文挑战第30天】
1661 0
Vanilla OS:下一代安全 Linux 发行版
|
Ubuntu Unix Linux
操作系统的最强入门科普(Unix/Linux篇)
下期文章,小枣君会重点聊聊Windows和macOS那条线。敬请关注! 如果大家觉得文章不错,还请帮忙多多转发!谢谢!
|
Web App开发 缓存 Rust
|
弹性计算 自然语言处理 Ubuntu
OS Copilot-操作系统智能助手-Linux新手小白的福音
OS Copilot是由阿里云推出的操作系统智能助手,专为Linux新手设计,支持自然语言问答、辅助命令执行等功能,极大提升了Linux系统的使用效率。用户只需通过简单的命令或自然语言描述问题,OS Copilot即可快速提供解决方案并执行相应操作。例如,查询磁盘使用量等常见任务变得轻松快捷。此外,它还支持从文件读取复杂任务定义,进一步简化了操作流程。虽然在某些模式下可能存在小问题,但总体上大大节省了学习和操作时间,提高了工作效率。
603 2
OS Copilot-操作系统智能助手-Linux新手小白的福音