我正在嘗試逐行讀取此文本檔案并存盤該行中的特定資訊以在我的程式中使用它。有5條資訊,其中4條用“_”隔開。最后一個用“:”分隔。
txt 檔案示例:
Shahran_1_True_True:61666.67
Shahran_1_True_True:61666.67
Pardis_2_True_True:18333.33
Shahrake Qods_2_True_True:30083.33
Shahrake Gharb_2_True_True:233333.33
例如,我需要將 Shahran、Pardis 和 Shahrake Qods 存盤在一個串列中。我可以閱讀這些行,但我無法將資訊分開。誰能告訴我這樣做的方法?
uj5u.com熱心網友回復:
你試過這個嗎?
my_list = []
with open('my_text.txt') as f:
lines = f.readlines()
for line in lines:
my_list.append(line.split('_')[0]) #index [0] to get the first element
my_list = list(set(my_list)) #get only unique names
print(my_list)
輸出
['Shahran', 'Shahrake Gharb', 'Shahrake Qods', 'Pardis']
uj5u.com熱心網友回復:
你必須在_and處分割每一行:。您可能希望將所有資訊存盤為 a listof dicts。
請務必閱讀有關該str.split方法的檔案。
records = []
with open('locations.txt') as f:
for line in f:
column1, column2, column3, remaining = line.split("_")
column4, column5 = remaining.split(":")
record = {}
record["column1"] = column1
record["column2"] = column2
record["column3"] = column3
record["column4"] = column4
record["column5"] = column5
records.append(record)
records現在是一個由 6 個dicts 組成的串列。要獲取存盤在其中的字串,您可以像這樣訪問它們:
print(records[0]["column1"])
輸出:
Shahran
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/490268.html
上一篇:Java中鍵值對的有序集合
