簡體   English   中英

在Python中將String元素轉換為int內部的int

[英]Converting String element to int inside a tuple in Python

我有一個元組a = (('1414', 'A'), ('1416', 'B'))並且我需要獲得結果為result = ((1414, 'A'), (1416, 'B'))

我嘗試tuple([map(int, x[0]) for x in a])基於如何在Python中將字符串轉換為整數的 tuple([map(int, x[0]) for x in a]) 我得到的結果為([1414], [1416]) 如何將結果保存為具有更改后值的元組,而不是將其列為列表?

使用生成器表達式:

a = (('1414', 'A'), ('1416', 'B'))

result = tuple((int(x[0]), x[1]) for x in a)

使用map

azip = list(zip(*a))
out = list(zip(map(int, azip[0]), azip[1]))

您可以在map()使用lambda,以將元組中的第一個元素轉換為int。

a = (('1414', 'A'), ('1416', 'B'))
result = tuple(map(lambda x: (int(x[0]), x[1]), a))

你可以做 :

print(tuple([(int(i[0]),i[1]) for i in a]))

對於詳細的解決方案:

a = (('1414', 'A'), ('1416', 'B'))

new_list=[]

for i in a:
    new_list.append((int(i[0]),i[1]))

print(tuple(new_list))

暫無
暫無

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

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