我有一個包含具有多個擴展名的文件的目錄,但我只對使用特定的文件感興趣。將更改應用於同一目錄中的多個文件
- document.doc
- file_with_the.extensionwanted
- other_file.extensionwanted
- presentation.ppt
- sheet.xls
- whatever.extensionwanted
這些文件,我想與以下格式一起使用csv風格:
This is a sentence, Info 1, Info 2, Info 3,...
This is a number: 37, Info 1, Info 2, Info 3,...
This is a letter: r, Info 2, Info 3,...
This is a symbol: $, Info 1, Info 2, Info 3,...
Here theres 'mb' too, Info 1, Info 2, Info 3,...
我希望運行刪除與.extensionwanted包含在第一列中有兩個不同的字符串結尾的文件,每行一個腳本,並有結果與相同的擴展名,避免空行的文件(我只要他們保持擴展名,就不在乎有不同的名字)。
這一點,例如,如果我想刪除包含字符串的行「這」和「MB」在同一時間的第一列,想要的結果將是:
This is a sentence, Info 1, Info 2, Info 3,...
This is a letter: r, Info 2, Info 3,...
Here theres 'mb' too, Info 1, Info 2, Info 3,...
我知道如何用給定擴展名的單個文件來完成它。例如,對於一個.csv:
import csv
import os
col = 0
look_for1 = set(['This'])
look_for2 = set(['mb'])
# Writing info wanted
with open('./Directory/file.csv','rb') as inf, \
open('./Directory/other_file.csv','wb') as outf:
incsv = csv.reader(inf, delimiter=',')
outcsv = csv.writer(outf, delimiter=',')
outcsv.writerows(row for row in incsv if look_for1 in row[col] and
look_for2 in[col])
os.remove('./Directory/file.csv')
,以及如何列出
import glob
files = glob.glob("*.extensionwanted")
for filename in files
print filename
但在這種情況下,擴展不與該文件夾中通過所有文件.csv和我想要循環延期。 我有點失落在動態環境中執行此操作,而不是使用靜態文件名。有人能幫我一把嗎?
輸出必須轉到每個文件inputp的唯一文件或文件輸出? – Trimax
「我有點失落」太含糊 - 你想要做什麼方面讓你煩惱? – martineau
@Informatico_Sano擴展文件沒有意義。重要的是它的格式。來自畢爾巴鄂的一個人給了這個文件兩個踢腿,並且它已經修復了。 _Ahíva la hostia!_ ;-) – Trimax