介绍
本博客记录python中os库的一些函数使用。
1 listdir(path: str)
listdir() 函数输入一个目录,返回该目录下的所有文件夹名称和文件名称。注意是名称而非路径。
举例,比如在路径D:\tmp 下有如下文件, 那么,os.listdir('D:\\tmp') 返回的内容为,
['文件1.txt', '文件2.txt', '文件3.txt', '文件夹1', '文件夹2', '文件夹3']
代码为,
import os
path = 'D:\\tmp'
files = os.listdir(path)
print(files)
2 path.isdir(path: str)
path.isdir() 函数返回布尔值,表示输入的路径是否为文件夹,如果是返回True ,否则返回False 。
举例,比如path.isdir('D:\\tmp\\文件夹1') 返回True ,而path.isdir('D:\\tmp\\文件1.txt') 返回False 。
代码如下,
import os
if os.path.isdir('D:\\tmp\\文件夹1') == True:
print('True')
if os.path.isdir('D:\\tmp\\文件1.txt') == False:
print('False')
输出为,
True
False
3 path.isfile(path: str)
path.isfile() 函数返回布尔值,表示输入的路径是否为文件,如果是返回True ,否则返回False 。
举例,比如path.isfile('D:\\tmp\\文件夹1') 返回False ,而path.isdir('D:\\tmp\\文件1.txt') 返回True 。
代码如下,
import os
if os.path.isfile('D:\\tmp\\文件夹1') == False:
print('False')
if os.path.isfile('D:\\tmp\\文件1.txt') == True:
print('True')
输出为,
False
True
4 path.join(path: str, file: str)
path.join() 函数拼接两个路径,在windows下拼接符为\\ ,因此path.join(path, file) 等价于path + '\\' + file 。但不同系统的拼接符是不一样的,因此使用path.join() 函数拼接两个路径会更鲁棒。
代码如下,
import os
path = 'D:\\tmp'
for file in os.listdir(path):
filename = file
filepath = os.path.join(path, filename)
print(f'filename = {filename}, filepath = {filepath}')
输出为,
filename = 文件1.txt, filepath = D:\tmp\文件1.txt
filename = 文件2.txt, filepath = D:\tmp\文件2.txt
filename = 文件3.txt, filepath = D:\tmp\文件3.txt
filename = 文件夹1, filepath = D:\tmp\文件夹1
filename = 文件夹2, filepath = D:\tmp\文件夹2
filename = 文件夹3, filepath = D:\tmp\文件夹3
5 path.getsize(path: str)
path.getsize() 函数返回输入文件的大小,单位是字节(Byte)。如果输入为文件夹的话,返回0。
举例,比如path.getsize('D:\\tmp\\文件夹1') 返回0,path.getsize('D:\\tmp\\文件1.txt') 返回文件1.txt的大小。
代码如下,
import os
size1 = os.path.getsize('D:\\tmp\\文件夹1')
size2 = os.path.getsize('D:\\tmp\\文件1.txt')
print(f'size1 = {size1}字节, size2 = {size2}字节')
输出为,
size1 = 0字节, size2 = 8字节
|