Python 從入門到放棄(三)

2021-08-13 09:07:43 字數 3201 閱讀 3223

2011/12/11 mon 13:58

直接建立:

phonebook = 

phonebook

out[224]:

phonebook = dict(alice = '1234', bob='2345')

# 注意關鍵字不能是expression,不是『alice』而是alice

phonebook

out[228]:

或者通過鍵值對序列建立:

items = [('alice','1234'), ('bob','2345')]

phonebook = dict(items)

phonebook

out[232]:

dict中的key可以是任意不可變型別。,如果key不存在,自動新增,比如:

phonebook

out[232]

: phonebook['conan'] = '3456'

phonebook

out[235]:

格式化文字:

'conan\'s phonenumber is %(conan)s' % phonebook

out[237]: "conan's phonenumber is 3456"

注意需要在百分號之後指定key,用()括起來,並在後面跟上其他的說明元素,如s。

copy實現淺複製:

phonebook

out[261]:

y = phonebook.copy()

y['bob'] = '8888'

yout[264]:

phonebook

out[265]:

y['conan'].remove('6666')

yout[267]:

phonebook

out[268]:

在淺複製中,替換不影響原來的,但是原位修改是不行滴,因為原始字典中也有同樣的值,也會受影響。

深複製:deepcopy

from copy import deepcopy

dc = deepcopy(phonebook)

dcout[271]:

phonebook

out[272]:

dc['conan'].remove('3456')

dcout[274]:

phonebook

out[275]:

dc['kid'] = '9999'

dcout[277]:

phonebook

out[278]:

從key的序列中建構dict:fromkeys

dict.fromkeys(['alpha','beta', 'gamma'])

out[279]:

訪問字典項:get,對於沒有的項不會報錯,會返回none或者自定義的default。而直接用key取就會報錯:

greek

out[288]:

greek.get('alpha')

out[289]: 'a'

greek.get('delta')

greek.get('delta','n/a')

out[291]: 'n/a'

greek.get('beta','n/a')

out[292]: 'b'

greek['gamma']

out[293]: 'c'

greek['delta']

traceback (most recent call last):

file "", line

1, in

greek['delta']

keyerror: 'delta'

檢索鍵值存在:has_key

greek.has_key('alpha')

out[295]: true

greek.has_key('eta')

out[296]: false

返回(鍵,值)對:items

greek.items()

out[297]: [('alpha', 'a'), ('beta', 'b'), ('gamma', 'c')]

返回鍵:keys

greek.keys()

out[298]: ['alpha', 'beta', 'gamma']

返回值:values

greek

out[313]:

greek.values()

out[314]: ['b', 'e', 'a', 'c']

設定default:setdefault

greek.setdefault('alpha','nil')

out[299]: 'a'

greek.setdefault('zeta','nil')

out[300]: 'nil'

greek

out[301]:

可以看出,如果已經有了該key,返回其value,否則加入並設定default。

用x字典更新y字典:y.update(x)

如果y中沒有x中的某項,即沒有該key,則新增上,如果有,則用x中該key對應的value更新。

newgreek = dict(alpha='a',eta='e')

newgreek

out[310]:

greek

out[311]:

greek.update(newgreek)

greek

out[313]:

the end

星期一, 11. 十二月 2017 03:12下午

python 從入門到放棄

本人所有關於python的內容均為學習期間的整理的筆記,希望可以給學習者帶來些許幫助!不過一入it深似海!準備入行者請做好充分的心理準備!計算機的知識跟新迭代速度很快,不學習就會被淘汰!如果你打算入行然後找乙份安穩的工作安度餘生,那麼我還是建議去考公務員吧!這個行業可能並不適合你!有不少的人可能都覺...

swoole 從入門到放棄(三)

bool swoole process exec string execfile,array args function swoole process start int 執行fork系統呼叫,啟動程序 array swoole process wait bool blocking true 結束執...

MySQL從入門到放棄(三)

接著上次的繼續學習哈,我們還是按照之前的步驟開啟mysql,選擇資料庫,繼續操作我們的emp表 delete顧名思義,就是刪除的意思,所以delete就是刪除語句,使用delete語句刪除表中的資料,具體的操作 delete from 表名 where 行 如果不用where語句,則把整個表都刪了,...