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

2019-04-29  本文已影响0人  凌烟阁主5221

abspath

返回一个目录的绝对路径Return an absolutepath.

>>> os.path.abspath("/etc/sysconfig/selinux")

'/etc/sysconfig/selinux'

>>> os.getcwd()

'/root'

>>> os.path.abspath("python_modu")

'/root/python_modu'

basename

返回一个目录的基名Returns the finalcomponentofa pathname

>>>os.path.basename("/etc/sysconfig/selinux")

'selinux'

>>>os.path.basename("/usr/local/python3/bin/python3")

'python3'

dirname

返回一个目录的目录名Returns the directorycomponentofa pathname

>>>os.path.dirname("/etc/sysconfig/selinux")

'/etc/sysconfig

'>>>os.path.dirname("/usr/local/python3/bin/python3")

'/usr/local/python3/bin'

exists

测试指定文件是否存在Test whether apathexists.  Returns Falseforbroken symbolic links

>>>os.path.exists("/home/egon")

False

>>>os.path.exists("/root")

True

>>>os.path.exists("/usr/bin/python")

True

getatime

得到指定文件最后一次的访问时间Returnthe lastaccesstimeofafile, 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 metadatachangetimeofafile, reportedbyos.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

得到指定文件最后一次的修改时间Returnthe last modificationtimeofafile, 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

得到得到文件的大小Returnthe sizeofa file, reportedbyos.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 pathisabsolute

>>>os.path.isabs("python_modu")

False

>>>os.path.isabs("/etc/sysconfig")

True

isdir

测试指定参数是否是目录名Returntrueifthe pathname referstoan existing directory.

>>>os.path.isdir("/etc/sysconfig/selinux")

False

>>>os.path.isdir("/home")

True

isfile

测试指定参数是否是一个文件Test whether a pathisa regularfile

>>>os.path.isfile("/home")

False

>>>os.path.isfile("/etc/sysconfig/selinux")

True

islink

测试指定参数是否是一个软链接Test whether apathis a symbolic link

>>>os.path.islink("/etc/sysconfig/selinux")

True

>>>os.path.islink("/etc/sysconfig/nfs")

False

ismount

测试指定参数是否是挂载点Test whether apathis a mount point

>>>os.path.ismount("/mnt/cdrom")

False

以上是未挂载光盘,现在把光盘挂载到/mnt/cdrom下,再进行测试

>>>os.path.ismount("/mnt/cdrom")

True

join

join(a, *p)将目录名和文件的基名拼接成一个完整的路径Join twoormore pathname components, inserting'/'asneeded.Ifany componentisanabsolutepath, all previous path componentswill be discarded.  An empty last part will resultina path thatendswitha separator.

>>>for filename in os.listdir("/home"):

   ..   .    print(os.path.join("/tmp",filename))

    ...     

/tmp/a

/tmp/f1.txt

realpath

返回指定文件的标准路径,而非软链接所在的路径Return the canonicalpathof the specified filename, eliminating anysymbolic links encounteredinthepath.

>>>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 actualfile

sameopenfile

测试两个打开的文件是否指向同一个文件Test whether twoopenfileobjects reference the samefile

split

分割目录名,返回由其目录名和基名给成的元组Split a pathname.  Returns tuple"(head, tail)"where"tail"iseverything after thefinalslash.  Eitherpartmay be empty.

>>>os.path.split("/tmp/f1.txt")

('/tmp','f1.txt')

>>>os.path.split("/home/test.sh")

('/home','test.sh')

splitext

分割文件名,返回由文件名和扩展名组成的元组Splitthe extension from a pathname.Extensioniseverything from the last dottotheend, ignoringleading dots.  Returns"(root, ext)"; ext may beempty.

>>>os.path.splitext("/home/test.sh")

('/home/test','.sh')

>>>os.path.splitext("/tmp/f1.txt")

('/tmp/f1','.txt')

上一篇下一篇

猜你喜欢

热点阅读