[英]How to Convert List of Numbers to Integers in Python?
所以我有一個來自 Python 加載的 .txt 文件的數字列表列表:
ls = [['3456', '937'], ['3666', '54533'], ['24456', '83279'], ['344516', '10410']...]
如何將數字( type: list
)轉換為整數類型,但將它們保留在此列表中?
即我想要的輸出:
[[3456, 937], [3666, 54533], [24456, 83279], [344516, 10410]...]
我試過用這個:
ls = [int(i) for i in ls]
但是得到錯誤: int() 參數必須是一個字符串。
有誰知道如何轉換為我想要的輸出? 謝謝!
你可以在里面多用一個理解:
ls = [[int(i) for i in k] for k in ls]
您可以使用map
和列表理解。
ls = [['3456', '937'], ['3666', '54533'], ['24456', '83279'], ['344516', '10410']]
>>> [list(map(int, i)) for i in ls]
#[[3456, 937], [3666, 54533], [24456, 83279], [344516, 10410]]
列表是可變的,但字符串不是。 您可以使用 for 循環來實現此目的。
print(id(a[0]))
print(id(a[0][0]))
for i in range(len(a)):
for j in range(len(a[i])):
a[i][j] = int(a[i][j])
print(a)
print(type(a[0][0]))
print(id(a[0])) # the same id with the first print
print(id(a[0][1])) # id has changed
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.