如何在Python中查找字符串中的偶数
我试图在字符串中找到偶数如何在Python中查找字符串中的偶数,python,Python,我试图在字符串中找到偶数 s = "75,41,14,8,73,45,-16" evenNumbers = [] for number in s.split(","): if int(number) % 2 == 0 and int(number) > 0: evenNumbers += number evenNumbers = ','.join(evenNumbers) print("Even Numbe
s = "75,41,14,8,73,45,-16"
evenNumbers = []
for number in s.split(","):
if int(number) % 2 == 0 and int(number) > 0:
evenNumbers += number
evenNumbers = ','.join(evenNumbers)
print("Even Numbers : \"{}\"".format(evenNumbers))
它的输出就像
Even Numbers : "1,4,8"
我想让它像
Even Numbers : "14,8"
您需要在列表中添加数字,而不是字符串
evenNumbers += int(number)
然后连接字符串
evenNumbers = ','.join(map(str, evenNumbers))
否则,请执行
evenNumbers.append(number)
或者在一条线上完成这一切
evenNumbers = ','.join(filter(lambda x: int(x) % 2 == 0 and int(x) > 0, "75,41,14,8,73,45,-16".split(",")))
您可以将号码附加到列表中。大概是这样的:
s = "75,41,14,8,73,45,-16"
evenNumbers = []
for number in s.split(","):
if int(number) % 2 == 0 and int(number) > 0:
evenNumbers.append(number)
print("Even Numbers : \"{}\"".format(evenNumbers))
“['14','8']”
你也可以列出你的理解
even_numbers = [n for n in s.split(',') if int(n) % 2 == 0]
您将使用此选项获取预期输出。您只需将
evenNumbers+=number
替换为evenNumbers.append(int\u num)
将
evenNumbers+=number
替换为evenNumbers。追加(number)
?生成int(number)无效。但是我把偶数的类型改为数组。然后我添加evenNumbers=',join(map(str,evenNumbers))。它确实起了作用。谢谢。你说的“将类型更改为数组”是什么意思?我需要一个输出,如:偶数:“14,8”,然后你必须将最后一行更改为:print(“偶数:{}”。格式(str(偶数)。replace(“[”,”)。replace(“]”,”)。replace(“,”)。它将列表转换为字符串,并替换不需要的字符。
s = "75,41,14,8,73,45,-16"
evenNumbers = []
for number in s.split(","):
int_num = int(number)
if int_num % 2 == 0 and int_num > 0:
evenNumbers.append(int_num)
print("Even Numbers : \"{}\"".format(evenNumbers))