1、在Windows上,使用倒斜杆作为文件夹之间的分隔符,在Linux上,使用正斜杠作为路径分隔符。在编写Python脚本时,可以os.path.join()函数来处理
在Windows环境下命令如下,返回的路径为倒斜杆,倒斜杆有两个,是因为加了转义字符
>>>
>>> import os
>>> os.path.join(\'usr\',\'bin\',\'pigwan7\')
\'usr\\bin\\pigwan7\'
>>>
在Linux环境下命令,返回的路径为正斜杠
>>>
>>> import os
>>> os.path.join(\'usr\',\'bin\',\'pigwan7\')
\'usr/bin/pigwan7\'
>>>
2、获得当前路径和改变工作路径
>>>
>>> import os
>>> os.chdir(\'/usr/bin\')
>>> os.getcwd()
\'/usr/bin\'
>>> os.chdir(\'/root\')
>>> os.getcwd()
\'/root\'
>>>
3、创建新文件夹
>>>
>>> os.makedirs(\'/home/xiaobai/study\')
>>> os.chdir(\'/home/xiaobai/study\')
>>> os.getcwd()
\'/home/xiaobai/study\'
>>>
4、相对路径和绝对路径
os.path.abspath(path)返回参数的绝对路径的字符串,os.path.isabs(path),返回一个布尔值,判断是否是相对路径
>>>
>>> os.path.abspath(\'.\')
\'/home/xiaobai/study\'
>>> os.path.isabs(\'.\')
False
>>>
os.path.dirname(path)返回一个字符串,包含path参数中最后一个斜杠之前的所有内容;os.path.basename(path)将返回path参数中最后一个斜杠之后的所有内容
>>>
>>> os.path.dirname(\'/home/xiaobai/study/test.txt\')
\'/home/xiaobai/study\'
>>> os.path.basename(\'/home/xiaobai/study/test.txt\')
\'test.txt\'
>>>
os.path.split()返回两个字符串的元组,包含路径的目录名称和基本名称
>>>
>>> os.path.split(\'/home/xiaobai/study/test.txt\')
(\'/home/xiaobai/study\', \'test.txt\')
>>>
查看文件大小和文件夹内容
os.path.getsize(path)返回path参数中文件的字节数,下面这个例子中的文件大小为51200字节
>>>
>>> os.path.getsize(\'/home/xiaobai/study/test.txt\')
51200
>>>
os.listdir(path)返回path参数中文件名的字符串列表,/home/xiaobai/study目录下共有3个文件
[root@client01 study]#
[root@client01 study]# pwd
/home/xiaobai/study
[root@client01 study]# ll
total 156
-rw-r--r--. 1 root root 51200 Nov 17 01:28 test1.txt
-rw-r--r--. 1 root root 51200 Nov 17 01:28 test2.txt
-rw-r--r--. 1 root root 51200 Nov 17 01:24 test.txt
[root@client01 study]#
>>>
>>> os.listdir(\'/home/xiaobai/study/\')
[\'test.txt\', \'test1.txt\', \'test2.txt\']
>>>
利用os.path.getsize(path)和os.listdir()可以计算文件夹下所有文件的大小
>>>
>>> totalSize=0
>>> for filename in os.listdir(\'/home/xiaobai/study/\'):
... totalSize=totalSize + os.path.getsize(os.path.join(\'/home/xiaobai/study/\',filename))
...
>>> print(totalSize)
153600
>>>
5、检测路径有效性
>>>
>>> os.path.exists(\'/home/xiaobai\')
True
>>> os.path.isdir(\'/home/xiaobai\')
True
>>> os.path.isfile(\'/home/xiaobai\')
False
>>>