從文件特別名單我有一個這樣的文件:產生蟒蛇
one:two:three
four:five:six
seven:height:nine
等等...... 我想是正確解析它來獲取這種變量:
myVar = [("one", "two", "three"), ("four", "five", "six"), ("seven", "height", "nine")]
當然,文件並沒有停在九點,之後有更多的線條。
我該怎麼用Python做到這一點?
謝謝!
從文件特別名單我有一個這樣的文件:產生蟒蛇
one:two:three
four:five:six
seven:height:nine
等等...... 我想是正確解析它來獲取這種變量:
myVar = [("one", "two", "three"), ("four", "five", "six"), ("seven", "height", "nine")]
當然,文件並沒有停在九點,之後有更多的線條。
我該怎麼用Python做到這一點?
謝謝!
使用列表compehension:
with open('filename') as f:
myVar = [line.rstrip().split(':') for line in f]
如果你需要一個列表,元組,然後傳遞到line.rstrip().split(':')
tuple()
:
tuple(line.rstrip().split(':'))
with open('your file') as f:
myVar = [ tuple(a.split(':')) for a in f.read().split() ]
print myVar
輸出
[('one', 'two', 'three'), ('four', 'five', 'six'), ('seven', 'height', 'nine')]
'file.readlines()'實際上將返回''一:二:三\ n 「'。 –
@Aशwiniचhaudhary固定 – vaultah
您正在處理的數據看起來像分隔符分隔。我會建議使用csv.reader
,這樣
import csv
with open("Input.txt") as in_file:
reader = csv.reader(in_file, delimiter=':')
print [row for row in reader]
可以將此轉換爲一個元組,這樣
print [tuple(row) for row in reader]
非常感謝! 我要去waaay爲此複雜。 Python是如此偉大的語言。 –