亲宝软件园·资讯

展开

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字节

加载全部内容

相关教程
猜你喜欢
用户评论