python學習(五)字典學習

來源:互聯網
上載者:User

標籤:lte   編寫   key   工作   anti   語言   運行   列表   存在   




#!/usr/bin/python# 字典# 當時學java的時候, 語言基礎就學了好久, 然後是各種API, 最後才是集合# 索引值對, 可變# 1. 映射操作D = {‘food‘ : ‘Spam‘, ‘quantity‘:4, ‘color‘:‘pink‘}print(D[‘food‘])                # 通過鍵來擷取值D[‘quantity‘] += 1              # 改變鍵對應的值# 另一種構造字典的方法D = {}D[‘name‘] = ‘Bob‘D[‘job‘] = ‘dev‘D[‘age‘] = 40# 在Python通過字典編寫的搜尋方法很快# 重訪嵌套rec = {‘name‘: {‘first‘:‘Bob‘, ‘last‘:‘Smith‘},       ‘job‘:[‘dev‘, ‘mgr‘],       ‘age‘:40.5}rec[‘name‘]rec[‘name‘][‘last‘]rec[‘job‘]rec[‘job‘][-1]                  # ‘job‘鍵對應的列表的最後一個值rec[‘job‘].append(‘janitor‘)# 所建立的這些對象都不需要手動釋放, 有Python的自動垃圾收集# 2. 鍵的排序: for迴圈# 字典僅支援通過鍵擷取元素, 而且有時候還是無需的# 如鍋要對字典進行排序, 先擷取鍵的列表, 然後使用sort方法進行排序# 最後使用for迴圈逐個顯示結果Ks = list(D.keys())             # 無需列表Ks.sort()                       # 對key進行排序for key in Ks:    print(key, ‘=>‘, D[key])for c in ‘spam‘:    print(c.upper())x = 4while x > 0:    print(‘spam!‘ * x)    x -= 1# 迭代和最佳化squares = [ x ** 2 for x in [1, 2, 3, 4, 5]]print(squares)squares = []for x in [1, 2, 3, 4, 5]:    squares.append(x ** 2)# 列表解析和相關的函數編程工具, 如map和filter, 通常運行得比for迴圈快# 首先為了簡單和可讀性去編寫代碼, 在程式可以工作, 並證實確實有必要考慮效能之後, 再考慮該問題# 關於這個python提供了time以及timeit和profile模組# 不存在的鍵: if 測試D = { ‘a‘ : 1, ‘c‘ : 3, ‘b‘ : 2}D[‘e‘] = 99# D[‘f‘] 鍵‘f‘不存在, 這樣使用會報錯的# in關聯運算式允許我們查詢字典中一個鍵是否存在if not ‘f‘ in D:    print(‘missing key f in D‘)value = D.get(‘x‘, 0)           # 擷取鍵‘x‘的值, 如果沒有擷取到那麼就是0付給value        D[None] = 4                     # None也可以作為鍵耶print(D)

python學習(五)字典學習

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.