這個的運行邏輯是怎樣的
for x in [ 1,2,3,4,5,6,7,8,9]:
??? for y in [0,1,2,3,4,5,6,7,8,9]:
????? if x>=y:
????????? continue
??? print x*10+y
for x in [ 1,2,3,4,5,6,7,8,9]:
??? for y in [0,1,2,3,4,5,6,7,8,9]:
????? if x>=y:
????????? continue
??? print x*10+y
2018-06-27
舉報
2018-07-06
首先你要先理解 print x*10+y 打印的是外層的for循環,外循環里有元素幾個,就打印幾個元素
根據你的公式x*10+y,打印出來的十位數肯定是1y,2y,3y,4y,5y,6y,7y,8y,9y
內循環中的if沒有對y值進行修改,而你打印的是外循環語句,所以if語句只對內循環有效,可以跳過不看
第一次循環的時候x=1,y從0循環到9,因為你打印的不是內循環,所以最后y會得到內循環 循環結束后的值
所以你最后的個位數y都會等于9
?
2018-06-27
首先進入第一個for循環得到x=1
然后進入第二個for循環得到y=0
判斷x>=y是否正確,這里true,所以走continue進入第二個for循環(因為第二個for循環還沒有結束)
第二個for循環獲得y=1
判斷x>=y是否正確,這里true,繼續continue進入第二個循環
第二個for循環獲得y=2
判斷x>=y是否正確,這里為false,跳過continue,來到print打印出x*10+y,然后進入第二個for循環
如此類推,直到第二個for循環結束,接著進入第一個for循環x=2
再次進入第二個for循環繼續循環判斷
以上步驟直到第一個循環跑完結束