簡體   English   中英

修改一個python列表中的所有元素,將類型從字符串改為整數

[英]Modify all elements in a python list and change the type from string to integer

我有一個數字列表,看起來像['3,2,4', '21,211,43', '33,90,87']我猜此時元素被視為字符串。

我想刪除倒置的逗號並制作一個包含所有這些數字的列表。

預期輸出為[3,2,4, 21,211,43, 33,90,87]

另外,我想知道元素的類型是否從字符串轉換為整數。

有人請幫助我!

以下情況如何:

result = []
# iterate the string array
for part in ['3,2,4', '21,211,43', '33,90,87']:
    # split each part by , convert to int and extend the final result
    result.extend([int(x) for x in part.split(",")])
print(result)

輸出:

$ python3 ~/tmp/so.py 
[3, 2, 4, 21, 211, 43, 33, 90, 87]

這里有 3 個活動部分:

  1. 拆分字符串列表
  2. 將字符串轉換為整數
  3. 展平嵌套列表

第一個,str.split

>>> '1,2,3'.split(',')
['1', '2', '3']

第二個int

>>> int('2')
2

最后但並非最不重要的是, 列出理解

>>> list_of_lists = [[1,2],[3,4]]
>>> [element for sublist in list_of_lists for element in sublist]
[1, 2, 3, 4]

將所有三個部分放在一起作為練習留給您。

>>> your_list = ['3,2,4', '21,211,43', '33,90,87']      
>>> your_list = [int(num) for item in your_list for num in item.split(",")]
>>> print(your_list)
[3, 2, 4, 21, 211, 43, 33, 90, 87]

暫無
暫無

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

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