>> > import os
>> > os. chdir( "e:\\qq1" )
>> > os. getcwd( )
'e:\\qq1'
>> > os. chdir( os. pardir)
>> > os. getcwd( )
'e:\\'
>> > os. mkdir( "e:\\aa\\aa1" )
>> >> os. makedirs( "e:\\bb\\bb1" )
>> > os. rmdir( "e:\\qq" )
>> > os. removedirs( "e:\\qq1\\qq2\\qq3" )
qq1( qq2( qq3) 和2. txt) ,删除之后显示的目录qq1( 2. txt)
>> > os. remove( "e:\\qq\\1.txt" )
>> > os. listdir( "e:\\qq1" )
列出指定目录下的所有文件和子目录,包括隐藏文件或目录,并以列 表形式返回。
( 注意只有qq1目录下的目录和文件,再递归往下的不显示)
>> > os. system( "dir E:\\qq1" )
>> > os. sep
'\\'
>> > os. linesep
'\r\n'
>> > os. environ
获取文件夹的路径和有多少文件 os.walk(top, topdown=True, οnerrοr=None, followlinks=False) 参数说明: ----top:表示需要遍历的目录树的路径。 ----topdown的默认值是“True”,表示首先返回目录树下的文件,然后遍历目录树 下的子目录。值设为False时,则表示先遍历目录树下的子目录,返回子目录下的文件,最后返回根目录下的文件。 ----onerror的默认值是“None”,表示忽略文件遍历时产生的错误。如果不为空, 则提供一个自定义函数提示错误信息后继续遍历或抛出异常中止遍历。 ----该函数返回一个列表,列表中的每一个元素都是一个元组,该元组有3个元素,分别表示每次遍历的路径名,目录列表和文件列表。 ----默认情况下,os.walk 不会遍历软链接指向的子目录,若有需要请将followlinks 设定为true。
import os
for root, dirs, files in os. walk( "E:\\qq1" ) :
print ( "当前目录-->%s" % root)
for name in dirs:
print ( "当前目录的子目录-->%s" % os. path. join( root, name) )
for name in files:
print ( "当前目录下的文件-->%s" % os. path. join( root, name) )
print ( )
"""执行结果:(qq1(qq2(qq3和3-1.txt)、2-1.txt和2-2.txt))
当前目录-->E:\qq1
当前目录的子目录-->E:\qq1\qq2
当前目录下的文件-->E:\qq1\2-1.txt
当前目录下的文件-->E:\qq1\2-2.txt
当前目录-->E:\qq1\qq2
当前目录的子目录-->E:\qq1\qq2\qq3
当前目录下的文件-->E:\qq1\qq2\3-1.txt
当前目录-->E:\qq1\qq2\qq3
"""
os. path. abspath( ) 返回path规范化的绝对路径(但这个路径不一定是真实存在的路径)
path是一个文件名,使用该函数后返回的路径则是当前工作目录路径连接该文件名后所组成的新路径名
>> > os. path. abspath( "2-1.txt" )
'C:\\Users\\Administrator\\2-1.txt'
>> > os. path. abspath( "e:\\qq1" )
'e:\\qq1'
os. path. split( ) 表示将path分割成目录和文件名
>> > tuple1= os. path. split( "e:\\qq1\\2-1.txt" )
>> > tuple1
( 'e:\\qq1' , '2-1.txt' )
>> > tuple1[ 0 ]
'e:\\qq1'
>> > tuple1[ 1 ]
'2-1.txt'
和上面的效果一样
>> > os. path. dirname( "e:\\qq1\\2-1.txt" )
'e:\\qq1'
>> > os. path. basename( "e:\\qq1\\2-1.txt" )
'2-1.txt'
>> > os. path. exists( "e:\\qq1\\2-1.txt" )
True
>> > os. path. isabs( "e:\\qq1\\2-1.txt" )
True
>> > os. path. isfile( "e:\\qq1\\2-1.txt" )
True
>> > os. path. isdir( "e:\\qq1\\2-1.txt" )
False
os. path. join( a, p) 表示连接两个或更多的路径名,中间以“\”分隔,
如果所给的参数中都是绝对路径名, 那先给的绝对路径将会被丢弃。
>> > os. path. join( "e:\\qq1" , "2-1.txt" )
'e:\\qq1\\2-1.txt'
>> > os. path. join( "e:\\qq1" , "e:\\2-1.txt" )
'e:\\2-1.txt'
os. path. splitext( path) 表示分离文件名和扩展名
>> > os. path. splitext( "e:\\2-1.txt" )
( 'e:\\2-1' , '.txt' )
os. path. splitdrive( path) 表示 拆分驱动器和文件路径,并以元组返回结果;
主要针对win有效,Linux元组第一个总是空。
>> > os. path. splitdrive( "e:\\2-1.txt" )
( 'e:' , '\\2-1.txt' )