真的死活看不懂這3個for回圈的嵌套,我太委屈了,第一題就不會做也看不懂,我還想掙扎下實在無法理解,有沒有哪位好心的大神教教我可憐可憐孩子吧




uj5u.com熱心網友回復:
輸出 1- 5 的3個數, 且這3個數不一樣。uj5u.com熱心網友回復:
看看數學上的排列組合uj5u.com熱心網友回復:
意思就是從111開始到444窮舉判斷個位十位百位不相同的數字uj5u.com熱心網友回復:
# 可以這樣理解
for i in range(123,433):
if '0' in str(i) or '5' in str(i) or '6' in str(i) or '7' in str(i) or '8' in str(i) or '9' in str(i):
continue
if len(list(set(list(str(i))))) != 3:
continue
print(i)
uj5u.com熱心網友回復:
首先,排列組合你應該先清楚,這是前提。1 2 3 4
1 2 3 4
1 2 3 4
1 2 3 4
讓你組成一個三位數,個十百不能重復。你可以看作從上面三行里,每行取一個組成一個數字。從每行取一個,相信你看了介紹應該能明白用for回圈,三行一起的話就是用for嵌套,思路就變成了,你首先在第一行拿1出來,分別去另外兩行取不同的數再組合,都取完后再從第一行拿2出來,重復進行,這就是整塊代碼的執行邏輯。
我也是新手過來不久,希望可以幫到你。
uj5u.com熱心網友回復:
好建議,按排列組合應該是比較常規的思維方式,有時間審題后變通一下題目,可以簡單好多~
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/127578.html
上一篇:匯編語言
