老師,向您請教兩個問題。^_^ @清波
for x in ['A', 'B', 'C']: ? ?for y in ['1', '2', '3']:
? ? ? ?print x + y
x?每循環(huán)一次,y?就會循環(huán) 3 次,這樣,我們可以打印出一個全排列:
A1
A2
A3
B1
B2
B3
C1
C2
C3
您看上面的代碼和結(jié)果。我有兩個問題。首先是:print x + y 為什么必須這樣縮進?我在網(wǎng)上檢索了,也回顧了教程,沒明白。第二個問題是:為什么x 循環(huán)一次,y就循環(huán)三次?
2016-04-21
(⊙o⊙)… 我真不是老師。。 。 還是直接代碼格式列解釋吧:
2016-04-20
print x+y屬于for y這層循環(huán)的,屬于for x的二層循環(huán),python語法規(guī)定每層循環(huán)必須在上層循環(huán)的基礎(chǔ)上縮進相同的空格數(shù),標(biāo)準(zhǔn)的是以4個空格為一級,所以二層循環(huán)for y需要縮進8個空格;
for y循環(huán)屬于for x循環(huán)的嵌套循環(huán),因此每當(dāng)x取到['A','B','C']一個新的值,y就要遍歷['1', '2', '3']中所有值,因此需要循環(huán)三次,即當(dāng)x='A'時,y需要依次取‘1’,‘2’,‘3’這三個值,這是python的語法規(guī)定。
2016-04-20
(1)遇到寫for循環(huán)的時候需要在下一行空出4格再進行print
(2)x是第一重循環(huán),y是第二重循環(huán),for example:當(dāng)X=A時,需要判斷Y這時候要把B中的所有數(shù)遍歷一遍,才能進行X=B運行。
2016-04-20
python中的縮進的作用類似其他語言的{},用于區(qū)分程序塊,不縮進就代表和for語句并列關(guān)系,無法得到正確結(jié)果;
第二個for語句位置相較第一個for語句也縮進了,第二個for語句相較第一個for語句第一個層級。高層級執(zhí)行一次,低層級要執(zhí)行完畢,高層級才能執(zhí)行第二次。
同在學(xué)習(xí),有不懂,再交流,謝謝!
2016-04-20
沒看懂第一個問題。
第二個x保持一個固定的數(shù)的時候,y會取三個不同的值做運算。
教程這話講得不是很嚴(yán)謹(jǐn),不要太在意