簡體   English   中英

Function 用於列表中的拆分數字和每個數字的唯一編號/代碼

[英]Function for split digits in list and unique number/code for every digit

我有一個數據輸入,我想把它變成一個特定的形狀。

數據如下所示:

01211231202143244400222255340042523252102440536423024350201113345340514003134
20023230143300003201455331343005145134541545264403161213336031512541125234215
01203204313112402314341530533423155434004002652564464622316236363153203455225

我的代碼:

with open('Dataday8.in') as file: 
    data = [i for i in file.read().split()]

在代碼之后它看起來像:

data = ['01211231202143244400222255340042523252102440536423024350201113345340514003', '2002323014330000320145533134300514513454154526440316121333603151254112523421', '0120320431311240231434153053342315543400400265256446462231623636315320345522']

Buy 我希望它在每個數字之后分開(但每一行都應該在一個括號中)。 不管我嘗試什么,我的代碼永遠不會讓我達到目標。

在此之后,我想給列表中的每個數字一個唯一的數字,我可以在循環中使用它。

謝謝你的幫助

這是我嘗試在列表中的每個數字之后拆分的代碼:

[x for x in data.split('\n')]

我只是簡單地報告Maurice Meyer的回答,它完美地解決了問題,以便將來更好地閱讀。 此外,如果你想得到整數,你只需要 di

data = [list(int(i)) for i in file.read().split()]
data = [[int(elem) for elem in row] for row in data]

盡管Sala已經解決了,但我認為您的int object is not iterable的問題可以通過以下方式解決:

data = list([int(elem) for elem in row] for row in (i for i in file.read().split()))

你也可以這樣寫:

data = list(list(int(elem) for elem in row) for row in (i for i in file.read().split()))

這是單線的,但您當然可以將其分解。

暫無
暫無

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

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