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

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

這道題我這么寫哪里有問題,求大神解答

print [x*y for x in range(1,100,2)? for y in range(2,100,2) ]

正在回答

6 回答

這種寫法相當于走了兩次迭代,第一次for x in range(1,100,2),第二次for y in range(2,100,2),結果有49*48個,和題目要求不一樣,不單單是編譯器版本問題

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

range()含頭不含尾,所以range(2,100,2)取偶數,只能取到98,不會取到100,如果想取到100,可以寫成range(2,101,1)或者range(2,102,2)。

0 回復 有任何疑惑可以回復我~

可以理解為,x=1,依次與2到99之間的偶數相乘一次并輸入,然后x=1+2=3,再依次與2到99之間的偶數相乘一次并輸入,依此類推

0 回復 有任何疑惑可以回復我~

你的編譯器是python3版本,print打印要加括號的

print([x*y for x in range(1,100,2)? for y in range(2,100,2) ])這樣就行了



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

慕后端5058260

這個方法好,不過結果為什么會先打印了一遍x呢
2019-11-15 回復 有任何疑惑可以回復我~

語法錯誤,扔到編譯器里就直接報錯了http://img1.sycdn.imooc.com//5d81d8be0001e6d305070057.jpg

0 回復 有任何疑惑可以回復我~

沒有問題!

0 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

這道題我這么寫哪里有問題,求大神解答

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

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

幫助反饋 APP下載

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

公眾號

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