python os api 解释

os.getcwd()
返回当前文件绝对路径

import os

x = os.getcwd()
print(x)
打印结果
G:\deep-learning-for-image-processing-master\tensorflow_classification

os.path.join()
传入多个字符串类型,将其拼接

import os

y = r"G:\tensorflow_classification"
z = "Test2_alexnet"
n = "class_indices.json"
print(os.path.join(y,z,n))
打印结果
G:\tensorflow_classification\Test2_alexnet\class_indices.json

os.path.exist()
传入一个路径(字符串),判断其是否存在,返回一个布尔类型

import os

y = r"G:\tensorflow_classification"
print(os.path.exists(y))
打印结果
False

os.makedir()
传入一个路径,在该路径下创建一个文件夹

import os

os.makedirs("save_weights")

os.listdir()
传入一个绝对路径,以列表的形式返回该路径下所有文件的文件名

import os

x = os.listdir(r"G:\deep-learning-for-image-processing-master\tensorflow_classification\save_weights")
print(x)
打印结果
['sun.jpg', '新建文件夹']

os.path.sep
不传入参数,输出结果为路径分隔符

import os

print(os.path.sep)
打印结果
\

os.path.join()
传入一个路径,返回三个值(root,dir,files),dir和files为一个列表,列表中的元素分别为目录和文件,root为这些目录和文件所在的路径。要搭配使用for循环。在第二次循环的时候会使用dir中第零个目录进行同样操作。这样会将输入路径下所有的文件都遍历到,取出需要的文件

import os

path = r"D:\data\16d629d3-20416818-5a867b14-6f79a8c0-5000003b-22c3806--"
# 
for root,dir,files in os.walk(path):
    for file in files:
        if file.endswith(".jpg"):
            print(file)
# 打印
7ff977453566c67845039f7b045420bb_0052.jpg
7ff977453566c67845039f7b045420bb_0053.jpg
7ff977453566c67845039f7b045420bb_0054.jpg
7ff977453566c67845039f7b045420bb_0055.jpg
7ff977453566c67845039f7b045420bb_0056.jpg
7ff977453566c67845039f7b045420bb_0057.jpg
7ff977453566c67845039f7b045420bb_0058.jpg
7ff977453566c67845039f7b045420bb_0059.jpg
7ff977453566c67845039f7b045420bb_0060.jpg
7ff977453566c67845039f7b045420bb_0061.jpg
7ff977453566c67845039f7b045420bb_0062.jpg
7ff977453566c67845039f7b045420bb_0063.jpg

os.path.basename()
传入一个路径,输出该路径的基本路径

path = r"D:\data\16d6\3e6\0060.jpg"
basename = os.path.basename(path)
print(basename)
# 打印
0060.jpg

os.scandir()
可以传入一个参数,当不传入参数时,默认当前路径,返回该路径下所有文件的信息

path = r"D:\data\16d629d3-20416818-5a867b14-6f79a8c0-5000003b-22c3806--"
for file in os.scandir(path):
    print(file,
    	type(file),
    	file.name,
    	file.path,
    	file.is_dir(),
    	file.stat(),
    	file.is_file())
    break
# 打印
<DirEntry '01b3d271779c30dfb951e62730a6e94f'>
<class 'nt.DirEntry'>
01b3d271779c30dfb951e62730a6e94f
D:\data\16d629d3-20416818-5a867b14-6f79a8c0-5000003b-22c3806--\01b3d271779c30dfb951e62730a6e94f
True
os.stat_result(st_mode=16895, st_ino=0, st_dev=0, st_nlink=0, st_uid=0, st_gid=0, st_size=0, st_atime=1667871674, st_mtime=1666856760, st_ctime=1666855959)
False

你可能感兴趣的:(笔记,python)