os常用等其它常用代码

os常用

1.创建路径

if not os.path.exists(路径):
	os.makedirs(路径)

或者


def mkdir(path):
    # 引入模块
    import os
    # 去除首位空格
    path=path.strip()
    # 去除尾部 \ 符号
    path=path.rstrip("\\")
    # 判断路径是否存在
    # 存在     True
    # 不存在   False
    isExists=os.path.exists(path)
    # 判断结果
    if not isExists:
        # 如果不存在则创建目录
        # 创建目录操作函数
        os.makedirs(path)
        #print(path +' 创建成功')
        return True
    else:
        # 如果目录存在则不创建,并提示目录已存在
        #print(path +' 目录已存在')
        return False

其它常用的

1. 获取某目录下所有suffix(eg".tif")格式文件

def getTiffFileName(filepath, suffix): # ".tif"
    L1 = []
    L2 = []
    for root, dirs, files in os.walk(filepath):  # 遍历该文件夹
        for file in files:  # 遍历刚获得的文件名files
            (filename, extension) = os.path.splitext(file)  # 将文件名拆分为文件名与后缀
            if (extension == suffix):  # 判断该后缀是否为.c文件
                L1.append(filepath + "/" + file)
                L2.append(filename)
    return L1, L2

2.多线程执行

import threading

threads = []
file1s = ['121044', '121045',  '122043', '122044', '122045', '123043', '123044', '123045']
for file1 in file1s:
    t = threading.Thread(target=函数名称,args=(参数1,))
    threads.append(t)

if __name__ == '__main__':
    for t in threads:
        t.setDaemon(True)
        t.start()

3.写入某excel表格

import openpyxl

wb = openpyxl.Workbook()
ws = wb2["sheet名字"]

data = pd.read_excel(”表名")
df = data.iloc[:, 5:18]

rows,cols = df.shape
# 从第1行1列写入
begin_row = 1
begin_col = 1

for i in range(cols):
    for j in range(rows):
        ws.cell(row = begin_row+j, column = begin_col+i).value =float(df.iloc[j,i])
wb2.save(r"文件名.xlsx".format(wb2Name))#保存数据
wb2.close()

4. 逐行写出文件夹中的tif名称

配合Fragstats使用,把输出文件.txt改为.fbt即可用软件批量导入

import os

cFileNumber = 0
dir = "文件夹名称"
for root, dirs, files in os.walk(dir):                      #遍历该文件夹
    for file in files:                                      #遍历刚获得的文件名files
        (filename, extension) = os.path.splitext(file)      #将文件名拆分为文件名与后缀
        if (extension == '.tif'):                             #判断该后缀是否为.c文件
            cFileNumber= cFileNumber+1                      #记录.c文件的个数为对应文件号
            print(cFileNumber, os.path.join(root,filename)+".tif") #输出文件号以及对应的路径加文件名
            file_write_obj = open("dest.txt", 'a') 
            var = os.path.join(root,filename)+".tif,x,0,x,x,1,x,IDF_GeoTIFF"
            file_write_obj.writelines(var)
            file_write_obj.write('\n')        
    file_write_obj.close()

5. 获取返回当前路径

os.chdir(os.getcwd())
posted @ 2021-09-01 14:42  skypanxh  阅读(100)  评论(0)    收藏  举报