亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

多重循環這題有2個寫法都能實現,哪種比較好呢?

寫法1:


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:

? ? ? ? ? ? print x * 10 + y




寫法2:

for x in range (1, 10):

? ? for y in?range (1, 10):

? ? ? ? if x < y:

? ? ? ? ? ? print x * 10 + y


正在回答

2 回答

復制題主代碼做一個完整的回答。。。

##?寫法1:
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:
????????????print?x?*?10?+?y

##?寫法2:
for?x?in?range?(1,?10):
????for?y?in?range?(0,?10):
????????if?x?<?y:
????????????print?x?*?10?+?y

##?解釋,?在Python2.x?中,兩種實現一樣,后者寫起來更快。
##?解釋,?在Python3.x?中,?對range()?函數做了升格,?range?不在返回一個列表了,?而是返回一個迭代器,
##????????可以理解為,同樣能迭代遍歷,但是節省了很大的內存空間。

##總結,?所以不管是在Python?的那個版本中,?寫法2?都是有優勢的。


1 回復 有任何疑惑可以回復我~
#1

wimpixel 提問者

非常感謝!
2016-05-04 回復 有任何疑惑可以回復我~

for x in range (1, 9):

? ? for y in?range (2, 10):

? ? ? ? if x < y:

? ? ? ? ? ? print x * 10 + y

這樣寫更合適一些 ,如果沒有特殊性,大量的數字是不會全部手敲上去的。


1 回復 有任何疑惑可以回復我~
#1

wimpixel 提問者

感謝回復. 請問為什么 第一排是在 (1.9) 第二排是在 (2,10)?
2016-04-26 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
初識Python
  • 參與學習       758398    人
  • 解答問題       8967    個

學python入門視頻教程,讓你快速入門并能編寫簡單的Python程序

進入課程

多重循環這題有2個寫法都能實現,哪種比較好呢?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號