如何检查列表中的值是否为字符串?

时间:2017-09-27 21:08:36

标签: python

我需要获取列表中的所有值,如果它们是字符串,则将它们替换为零,如果它们是int,则将它们替换为实际数字。 w.replace是我将如何替换字符串,但我不知道用什么替换0。

def safe_int(list):

list = [w.replace(, "0") for w in list]
list = [int(i) for i in list]

我想在list_of_strings中用零替换“a”并将整个“zebra”替换为零。

list_of_strings = ["a", "2", "7", "zebra" ]

结束输出应为[0,2,7,0]

2 个答案:

答案 0 :(得分:3)

您可以尝试使用string_isdigit

list_of_strings = ["a", "2", "7", "zebra" ]
[int(x) if x.isdigit() else 0 for x in list_of_strings]

答案 1 :(得分:1)

您可以使用try / catch来解析整数,例如:

ConvertBack