創(chuàng)新互聯(lián)www.cdcxhl.cn八線動態(tài)BGP香港云服務(wù)器提供商,新人活動買多久送多久,劃算不套路!
成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價比池州網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式池州網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋池州地區(qū)。費用合理售后完善,10余年實體公司更值得信賴。小編給大家分享一下python中列表和字典的區(qū)別是什么,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
列表是序列,可以理解為數(shù)據(jù)結(jié)構(gòu)中的數(shù)組,字典可以理解為數(shù)據(jù)結(jié)構(gòu)中的hashmap。
他倆都可以作為集合來存儲數(shù)據(jù)
從差異特征上來說
1. list是有序的,dict是無需的
2. list通過索引訪問,dict使用key訪問
3. list隨著數(shù)量的正常增長要想查找元素的時間復(fù)雜度為O(n), dict不隨數(shù)量而增長而變化,時間負(fù)責(zé)都為O(1)
4. dict的占用內(nèi)存稍比list大,會在1.5倍左右
特征決定用途:
list一般可作為隊列、堆棧使用,而dict一般作為聚合統(tǒng)計或者快速使用特征訪問等
從應(yīng)用場景來說:
list 是記錄簡單有序數(shù)據(jù)的,就是一對一的那種,可以理解為一維數(shù)組.
比如你記錄貓的名字,就可以用list = ['第1只貓名字','第2只貓名字'] ...
比如你記錄飯店的菜品,就可以用list = ['第1個菜紅燒肉','第2個菜紅燒大腸',第3個菜'紅燒排骨'] ...
這里的記錄,是多條記錄重復(fù)的,需要按一定順序來記錄.
list 也可以有嵌套,嵌套里面的list仍然可以理解為一維數(shù)組
比如常見的季度與月份的關(guān)系 list = [[1,2,3],[4,5,6],[7,8,9],[10,11,12]]
又或者你從excel讀取一行數(shù)據(jù),存到list中,也需要用到list嵌套
又或者你從SQL讀取一行數(shù)據(jù),存到list中,也會用的list嵌套.
這里的記錄,是多條按一定順序存放的,仍然需要按一定順序來讀取存放。
dict 是記錄復(fù)雜無序數(shù)據(jù),就是一對多,可以理解為多維數(shù)組.
比如你記錄一次野餐朋友帶的食物數(shù)量, dict = {'小明':{'紅燒肉':6,'大閘蟹':8,'水煮魚':1},'小花':{'黃瓜':9,'番茄':2},'小六子':{'啤酒':30,'可樂':40}}
dict可以嵌套list,把無序的數(shù)據(jù)調(diào)整為有序的數(shù)據(jù),可以簡單地理解為,一對多個一維數(shù)組,本質(zhì)上還是多維數(shù)組.
比如你要記錄同學(xué)們有多少個女朋友,dict = {'小明':['1號女友','2號女友'],'大個子':['1號女友','2號女友','3號女友']},你要統(tǒng)計誰的女朋友多,這個就比較明顯地體現(xiàn)出來了.
以上是python中列表和字典的區(qū)別是什么的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!