第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

Python中的動(dòng)態(tài)變量

Python中的動(dòng)態(tài)變量

暮色呼如 2019-10-12 14:11:05
例如,如何在python中創(chuàng)建具有動(dòng)態(tài)名稱的列表for i in range(len(myself)):   list(i) = []我應(yīng)該用什么代替list(i)?這意味著我想要以下一些名稱:list1list2list3...
查看完整描述

2 回答

?
月關(guān)寶盒

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超5個(gè)贊

我建議您只使用列表或字典,而不要使用動(dòng)態(tài)變量名。下面的所有版本都導(dǎo)致lists[0],lists[1]等為[],看起來似乎與您想要的足夠接近,并且從長遠(yuǎn)來看將更具可讀性/可維護(hù)性。(注意:我使用lists而不是list作為變量名,因?yàn)楹笳邥?huì)覆蓋內(nèi)置list函數(shù),您可能不希望這樣做)。


1)具有l(wèi)ists列表列表的版本(數(shù)字只是列表的順序):


lists = [[] for i in range(len(myself))]

2)相同,但是使用for循環(huán)而不是列表理解:


lists = []

for i in range(len(myself)):

   lists.append([])

3)版本lists是帶有數(shù)字作為鍵的列表的字典(如果您以后要?jiǎng)h除某些值,則更加靈活):


lists = {}

for i in range(len(myself)):

   lists[i] = []

關(guān)于動(dòng)態(tài)變量名,即像這樣的變量,list1而不是lists[1]...認(rèn)真地說,您可能不應(yīng)該這樣做。它不必要地復(fù)雜且難以維護(hù)??紤]一下-下個(gè)月您將要修改腳本,然后嘗試找出變量的list1定義位置,而純文本搜索將無法做到這一點(diǎn)。真痛苦 

但是,如果你真的想出于某種原因,這是可能的exec- 這里有一些理由不使用它 -或修改locals()- 根據(jù)文檔壞主意。另請參閱評論以獲取更多討論,以討論這些東西為什么不是一個(gè)好主意,甚至在談?wù)撨@些問題時(shí)也令人困惑。


查看完整回答
反對 回復(fù) 2019-10-12
?
MMMHUHU

TA貢獻(xiàn)1834條經(jīng)驗(yàn) 獲得超8個(gè)贊

動(dòng)態(tài)變量名很少是一個(gè)好主意。最好總是使用字典:


myLists = {"list{}".format(i):[] for i in range(len_i)}

不要list用作變量名,它會(huì)隱藏現(xiàn)有的關(guān)鍵字。


查看完整回答
反對 回復(fù) 2019-10-12
  • 2 回答
  • 0 關(guān)注
  • 466 瀏覽
慕課專欄
更多

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號