我有問題。這些是我有的大text.txt文件的前幾行:https://pastebin.com/UV7UiU5M,我需要打開它作爲一個字典來迭代它,並獲得值。我試着用如何在python中將文本文件打開爲dict?
for line in open('/home/conacons/Documents/products_with_stocks.txt'):
name = line.split()
for i in name[0:2]:
print i
,我也得到:
{
'BranchId':
'1',
'ArticleId':
'50375476',
'EAN':
'4029044771246',
'Price':
Decimal('299.95000'),
'Stock':
Decimal('1.00000'),
'ReservedStock':
Decimal('0'),
'LastMove':
datetime.datetime(2017,
},
,但它不是迭代,我不能使用的值。
編輯:
我得到了一段代碼來寫入文件。它看起來像這樣:
for n in range(0,650):
req['IterationConstraints']['BlockIndex'] = n
articles = client.service.GetArticles(req)
f.write(str(articles))
只是一個想法,也許'eval'函數工作,如果你把該輸入作爲一個字符串。 – silgon
這個文本文件的來源是什麼?您應該使用某種現有的支持格式(例如「JSON」或「pickle」)對您的數據進行序列化。相反,它看起來像有人把一些嵌套的'dict'的漂亮輸出轉儲到文本文件。這不是你應該做的*。使用'eval'解決一些解決方案非常簡單,但首先你不應該處於這個位置,但是你必須將正確的類型導入到全局名稱空間中,比如'Decimal'和'datetime .datetime' –
還有一個'json解碼器',你可以檢查,因爲你試圖讀取的格式似乎是一個json – silgon