如何将列表中的整数转换为int()?

2024-04-20 13:46:04 发布

您现在位置:Python中文网/ 问答频道 /正文

我在做一个用字符串计算数学的函数。首先,它获取字符串,然后将其转换为列表。你知道吗

我尝试将整个数组转换为整数数组,但是当数组看起来像这样时,我遇到了一个错误:["hello",1,"*",2],因为所有的东西都不是数字。你知道吗

我只想把数组["1","2","hello","3"]中的整数转换成整数,这样数组就变成了[1,2,"hello",3]

这样,我就可以对整数进行数学运算,而不是像现在这样把它们当作字符串来处理:

1 + 2

我得到12作为输出。 我想要3作为输出。你知道吗


Tags: 函数字符串hello列表错误数字数学整数
1条回答
网友
1楼 · 发布于 2024-04-20 13:46:04

可以将list comprehension^{}^{}一起使用:

ls = ["1", "2", "hello", "3"]
new_ls = [int(n) if n.isdigit() else n for n in ls]
print(new_ls)

Output:

[1, 2, 'hello', 3]

你知道吗

您还可以添加^{}使其适用于负数:

ls = ["1", "-2", "hello", "-3"]
new_ls = [int(n) if n.lstrip('-').isdigit() else n for n in ls]
print(new_ls)

Output:

[1, -2, 'hello', -3]

相关问题 更多 >