我有一個由149個文本字符串組成的列表。從每個字符串中,我想提取第2和第7行文本。我希望每行的結果都放在一個單獨的列表中。從列表中的字符串中提取第n行文本 - Python
我試過(只是一條線):
text = []
for string in list:
x = string.splitlines()[2]
text.append(x)
但我得到的消息「IndexError:列表索引超出範圍」。我想,也許我需要做的:
text = []
for string in list:
x = [string].splitlines()[2]
text.append(x)
但是,這給我的消息「AttributeError的:‘名單’對象有沒有屬性‘splitlines’」
我使用Python 3.6。有任何想法嗎?謝謝你的幫助!
你絕對不需要把它放在括號內,這使它成爲一個列表。 'string.splitlines'是正確的,你顯然沒有在那個特定條目中的3行。 (不知道你的數據是什麼樣的,我不能說更多) –
如果在第一次嘗試分配x之前執行'print(len(string.splitlines())),打印什麼? –
另外,爲了提取第二行,你應該使用'string.splitlines()[1]' - 因爲0是第一個元素,1是第二個元素,依此類推。 –