簡體   English   中英

Python - 文件中的元組列表

[英]Python - list of tuples from file

我已經完成了一些相當密集的計算,並且我無法將結果保存在pickle中(遞歸深度除外),因此我被迫打印所有數據並將其保存在文本文件中。

有沒有簡單的方法現在將我的文本列表轉換為好... python中的元組列表? 輸出看起來像這樣:

[(10, 5), (11, 6), (12, 5), (14, 5), (103360, 7), (16, 6), (102725, 7), (17, 6), (18, 5), (19, 9), (20, 6), ...(it continues for 60MB)]

你可以使用ast.literal_eval()

>>> s = '[(10, 5), (11, 6), (12, 5), (14, 5)]'
>>> res = ast.literal_eval(s)
[(10, 5), (11, 6), (12, 5), (14, 5)]
>>> res[0]
(10, 5)
string = "[(10, 5), (11, 6), (12, 5), (14, 5), (103360, 7), (16, 6), (102725, 7), (17, 6), (18, 5), (19, 9), (20, 6)]" # Read it from the file however you want

values = []
for t in string[1:-1].replace("),", ");").split("; "):
    values.append(tuple(map(int, t[1:-1].split(", "))))

首先,我用[1:-1]刪除開始和結束方括號,我替換), with ); 能夠分裂; 所以它不會被元組中的逗號分開,因為它們之前沒有a ) 在循環內部我使用[1:-1]來刪除括號,並用逗號分割。 map部分是將數字str轉換為int s,我將它們作為tuple附加。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM