2016-11-17 78 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。 –

相關問題