python中os库的函数使用
YMWM_ 人气:0介绍
os模块是Python和操作系统进行交互的一个接口,它提供了许多操作文件及文件夹的函数。可以用于文件名、文件路径、文件夹相关的操作。
本博客记录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')
输出为,
TrueFalse
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字节
加载全部内容