簡體   English   中英

如何處理包含前導零元素的列表?

[英]How to handle a list which contains elements having leading zeros?

我有一個來自另一個來源的data ,它以嵌套列表的形式出現,如下所示:

data = [
    ["store1", 50, 02132020], 
    ["store2", 20, 02112020], 
    ["store3", 25, 02172020]
]

在這里, 50price

並且, 02152022date.

當我打印數據時,出現以下錯誤:

leading zeros in decimal integer literals are not permitted; use an 0o prefix for octal integers

如何處理元素可能包含"leading zeros"的列表?

我的建議是您可以將列表中的第三個元素轉換為字符串,然后使用 datetime 轉換為 datetime object,因為它是一個日期。

我不知道data的確切來源。 首先,它不能是普通的 python 列表 object 因為它無法通過解釋器檢查。 其次,它還胡說八道JSON object。 02132020中不允許出現 02132020 之類的內容。

import datetime

data = [
    ["store1", 50, "02132020"], 
    ["store2", 20, "02112020"], 
    ["store3", 25, "02172020"]
]

for i in data:
    print({
        "store_name" : i[0],
        "price": i[1],
        "date":(datetime.datetime.strptime(i[2], '%m%d%Y')).date()
    })

Output:

{'store_name': 'store1', 'price': 50, 'date': datetime.date(2020, 2, 13)}
{'store_name': 'store2', 'price': 20, 'date': datetime.date(2020, 2, 11)}
{'store_name': 'store3', 'price': 25, 'date': datetime.date(2020, 2, 17)}

暫無
暫無

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

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