2016-11-17 32 views
0

这是迄今为止我尝试过的最新版本。如何将整数分解为其分量数字,并将每个数字放入列表中?

我有两个输入的n和k和随时i达到具有k在它的数,它需要打印 “boomboom”

n_print = list(range(1,n+1)) 
i = 0 
for i in n_print: 
if i == k: 
     print("boom!") 

####################### This part 
    elif i%k == 0 or k in list(str.split(repr(i))):  
##################### ^^^^^^^^^^^^^^^^^^^^^^^^^ 
     print("boom-boom!") 
    elif i != (n+1): 
     print(i) 
    else: 
     break 

所以如果k = 2和n = 23,它应打印“繁荣轰!”为12,20,21,22等。

我不知道我在做什么错。

回答

0

转换为str和检查遏制:

str(k) in str(i) 

将测试如果k数字显示(连续,如果有更多的一位)在i数字。

因此k=2i=23将评估为真,k=23i=12345也将如此评估。但是k=24i=234不会,因为在"234"中没有24的子串。

+0

完美!谢谢!! 没有显示,但k的输入限制为1-9。 –

相关问题