以下代码用于从用户那里获取输入,然后在用户输入中打印出奇数
list2 = [ list2 for list2 in input("list").split(",")]
odd_nos = [ num for num in list2 if num % 2 !=0]
print ("Odd numbers in the list: ",odd_nos)
但是,在尝试运行以上代码时,我遇到了以下错误
odd_nos =[ num for num in list2 if num % 2 !=0]
TypeError: not all arguments converted during string formatting
感谢您能在此方面为我提供帮助。
答案 0 :(得分:1)
简单修复-由于num是字符串,因此需要int(num)。
list2 = [ list2 for list2 in input("list").split(",")]
odd_nos = [ int(num) for num in list2 if int(num) % 2 !=0]
print ("Odd numbers in the list: ",odd_nos)
或者单线
odd_nos = [int(x) for x in input('Enter list').split(',') if int(x) % 2]
答案 1 :(得分:0)
这是解决方案:
list2 = [int(list2) for list2 in lst.split(",")]
odd_nos = [ num for num in list2 if num % 2 !=0]
print ("Odd numbers in the list: ",odd_nos)