[英]How can I use file names as an input?
我寫了一個 python 腳本(帶有 pandas 庫)來創建 txt 文件。 我還使用 txt 文件作為輸入。 它運作良好,但我想讓它更加自動化。
我的代碼開始像;
girdi = input("Lütfen gir: ")
input2 = girdi+".txt"
veriCNR = pd.read_table(
input2, decimal=",",
usecols=[
"Chromosome",
"Name",
.
.
.
我正在一一輸入文件的名稱並獲得如下輸出:
.
.
.
outputCNR = girdi+".cnr"
sonTabloCNR.to_csv(outputCNR, sep="\t", index=False)
outputCNS = girdi+".cns"
sonTabloCNS.to_csv(outputCNS, sep="\t", index=False)
outputCNG = girdi+".genemetrics.cns"
sonTabloCNG.to_csv(outputCNG, sep="\t", index=False)
如您所見,我也將輸入名稱用於輸出。 它們是制表符分隔的 txt 文件,具有不同的文件擴展名。
我想使用文件夾中的所有 txt 文件作為輸入,並為每個文件運行此腳本。
我希望我解釋清楚。
附言。 我不是程序員。 請用代碼解釋:)
您可以將創建文件的代碼放在將文件路徑作為輸入的 function 中:
def generate_results(input_filepath):
# your code generating the files
然后您可以在循環中使用此 function 來生成所有結果文件。
這是一個使用glob獲取directory
中所有文本文件的示例
import os
import glob
directory = "path to my directory"
for filepath in glob.glob(os.path.join(directory, "*.txt")):
generate_results(filepath)
如果要遍歷文件夾中的文件,請使用os.listdir(path)
。 它返回路徑上的文件名列表(默認為當前目錄)。
例如:
import os
supported_extensions = ['.cns', '.cnr']
for filename in os.listdir():
# Make sure file has desired extension
if os.path.splitext(filename)[1] in supported_extensions:
function(filename)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.