如何查找存在某个数字的每个数字

时间:2019-08-09 04:05:55

标签: python

我想知道如何列出所有包含某个数字的数字(通过输入),我该怎么做?

我已经尝试过查看StackOverflow,并尝试了答案中的一些代码,但是它没有用,我相信我做错了什么,请帮忙?

我的代码:

a = int(input("Search for: "))
b = int(input("In range up to: "))
numbers = range(0, b)
expected_numbers = [i for i in numbers if a in str(i)]
print(expected_numbers)

这是我收到的错误消息:

Traceback (most recent call last):
  File "program.py", line 4, in <module>
    expected_numbers=[i for i in numbers if a in str(i)]
  File "program.py", line 4, in <listcomp>
    expected_numbers=[i for i in numbers if a in str(i)]
TypeError: 'in <string>' requires string as left operand, not int

感谢您的帮助。

2 个答案:

答案 0 :(得分:2)

在这里。

<stdbool.h>

实际上,您将“ a”作为整数。休息一切正确。

如果要打印它,而不仅仅是修改最后一行。

a = input()
b = int(input())
expected_numbers = [i for i in range(b) if a in str(i)]
print(expected_numbers)

您将获得理想的结果。

答案 1 :(得分:1)

只是一个小错误,请将变量a转换为str

`expected_numbers = [i for i in range(b) if str(a) in str(i)]`

也PS:使用此link了解StackOverflow上的格式化选项。 :)