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

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

print [x for x in range(100,1000) if str(x)[0]==str(x)[2]] 是不是更精簡

print?[x?for?x?in?range(100,1000)?if?str(x)[0]==str(x)[2]]


正在回答

2 回答

沒看出來有多精簡,而且100遍歷到1000得耗費多長時間~還不如:

print?[x*100+y*10+x?for?x?in?range(1,9)?for?y?in?range(1,9)]

不過感覺還是以字符形式組合快,雖然占資源較多:(不知道對不對,湊合看吧)

import?time,?sys
t1=time.time()
a=[x?for?x?in?range(100,1000)?if?str(x)[0]==str(x)[2]]
t2=time.time()
print?t2-t1
t1=time.time()
b=[x+y+x?for?x?in?'123456789'?for?y?in?'0123456789']
t2=time.time()
print?t2-t1
c=[x*100+y*10+x?for?x?in?range(1,9)?for?y?in?range(1,9)]
t2=time.time()
print?t2-t1
print?sys.getsizeof(a)
print?len(a)
print?sys.getsizeof(b)
print?len(b)
print?sys.getsizeof(c)
print?len(c)


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

lingyi 提問者

非常感謝!
2015-03-29 回復 有任何疑惑可以回復我~
#2

勢無形

十位數可以取0的哦
2015-03-31 回復 有任何疑惑可以回復我~
#3

lymo 回復 勢無形

我知道,貪方便復制的,懶得改了
2015-04-01 回復 有任何疑惑可以回復我~

你這樣肯定是字符串快點啊,你都定義了字符串了,其他的還要通過range生成

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

舉報

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

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

進入課程

print [x for x in range(100,1000) if str(x)[0]==str(x)[2]] 是不是更精簡

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

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

幫助反饋 APP下載

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

公眾號

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