python os根據檔名自動生成文字

2021-08-21 15:48:58 字數 1164 閱讀 9213

有時我們有很多檔案(如),我們需要對每乙個檔案進行操作。

我們還需要乙份檔案的名字來進行遍歷,這時我們首先需要建立乙份檔案名單,有時還會對檔名做一定的篩選,如我們只選擇jpg格式的。

本文就是利用乙個資料夾下的幾張完成這些操作:把所有檔名寫入到乙個檔案中。

這可以進一步用來遍歷處理資料

#! usr/bin/env python

# coding: utf-8

# 為了自動獲取資料夾下的名字並將其寫入檔案,然後利用該檔案來處理對應的檔案

import os

import numpy as np

import cv2

# 先進行路徑操作

currentroot = os.getcwd() # 當前路徑

imgroot = currentroot + '/img'

# 所在的路徑

os.chdir(imgroot) # 切換到所在的路徑

# 開始讀取檔案並將其名稱寫入乙個檔案

filenames = open('imgname.txt','w') # 將要寫入檔名的檔案, w表示write

file = os.listdir(imgroot) # 讀取某個資料夾下的所有檔案

for i in

file: #採用檔案控制代碼的方式遍歷檔案

if os.path.splitext(i)[1]=='.jpg': # 判斷是否是jpg檔案,我們只對jpg檔案進行操作

data = str(i) + '\n'

# 將檔名和換行放在一起,檔名採用相對路徑

filenames.write(data) # 開始寫入檔案

filenames.close() # 最後關掉檔案

執行**,可得到乙個檔案,可看下圖

檔案內容如下:

如果重新執行一次**,發現檔案內容不會變化。

其實這時候資料夾中已經有了imgname這個檔案,但是其擴充套件名為txt,所以並不會被利用。

根據輸入檔名確定輸出檔名

這段 和 molpro 對輸入輸出檔名的處理方法相同,對輸入檔案 task.inp 生成輸出檔案 task.out。即,對輸入檔案的檔名去掉檔案型別字尾,預設的輸出檔案型別字尾是 out,這和 molpro 的設定是相同的。另外也保留了去掉檔案型別字尾的檔名字串,以便生成其他的 log 等等檔案之用...

Makefile根據檔名編譯檔案

同級目錄下有多個具有main函式的.c檔案,需要根據檔名來覺得哪乙個.c被編譯。makefile檔案如下 bin test cc gcc cflags dxdebug 自定義的巨集定義 libs incs i.inc 標頭檔案的路徑 srcs 0.c cobjs srcs c o all bin c...

根據excel內容批量修改檔名

excel中為各班級學生的資訊,每個班級為乙個sheet 一級檔案下有班級子檔案,班級檔案下為,即要修改名字的檔案 其他檔案類似 在這裡插入 片 import os import xlrd count 0first path c users administrator.desktop l29cioj...