python元组与字典

一:元组

  元组与列表的最大区别在与元组的第一及元素不可更改,故元组更多的用在安全性要求高与不可更改数据的情况更多。

  元组主要有两个方法分别为index()与count(),作用于列表的index()和count()一样,这里不再阐述。

  tuple()函数强制把数据转为元组并赋值给新的变量。

>>> li
[1, 8, 2, 1, 'louis', 'hello', 'ok']
>>> tu=tuple(li)
>>> tu
(1, 8, 2, 1, 'louis', 'hello', 'ok')

二:字典  

  字典类似于其他编程语言的数组。

  ①:删除pop()、clear()、popitem()

    clear()与列表的功能一样,这里不再阐述

    pop(self,k[,d=none])

>>> d
{'key1': 'vel1', 'key2': 'vel2', 'key3': 'vel3'}
>>> d.pop("key1")
'vel1'
>>> d.pop("key10")
Traceback (most recent call last):
  File "<pyshell#131>", line 1, in <module>
    d.pop("key10")
KeyError: 'key10'
>>> d.pop("key10","123")
'123'
>>> 

  以上代码可知pop()方法,会返回被删除的元素值,k的值如果不存在会报错,但可以通过设置d的参数来返回默认值

  popitem()

>>> d={'key1': 'vel1', 'key2': 'vel2', 'key3': 'vel3'}
>>> d.popitem()
('key3', 'vel3')
>>> d
{'key1': 'vel1', 'key2': 'vel2'}

  有上代码可知,popitem()方法默认删除最后一个元素,并返回键值对。

  ②:复制方法copy(),该方法与列表的一致

  ③:创建新字典fromkeys()方法

>>> dict= dict.fromkeys(("baidu","sogo","360"),"www")
>>> dict
{'baidu': 'www', 'sogo': 'www', '360': 'www'}

  备注,后面的值为可选,默认为空,且该值只能有一个。

  ④:获取字典数据get()、setdefault()

  get(self,k,d=none)

>>> dict
{'baidu': 'www', 'sogo': 'www', '360': 'www'}
>>> dict.get("baidu")
'www'
>>> dict.get("google")
>>> dict["google"]
Traceback (most recent call last):
  File "<pyshell#164>", line 1, in <module>
    dict["google"]
KeyError: 'google'
>>> dict.get("google","google")
'google'
>>> 

  由上带吗可知,get方法能够规避获取字典的数据不存在是可放回none或指定值,从而避免程序报错。

  setdefault(self,k,d=none)

>>> dict
{'baidu': 'www', 'sogo': 'www', '360': 'www'}
>>> dict.setdefault("baidu")
'www'
>>> dict.setdefault("google","google")
'google'
>>> dict
{'baidu': 'www', 'sogo': 'www', '360': 'www', 'google': 'google'}

  由上代码可知setdefault()方法与get()方法类似,不同之处在于,当获取的键值不存在是会在字典内新建对应键值。

  ⑤:获取所有键值,items()、keys()、values()

>>> dict.keys()
dict_keys(['baidu', 'sogo', '360'])
>>> dict.items()
dict_items([('baidu', 'www'), ('sogo', 'www'), ('360', 'www')])
>>> dict.keys()
dict_keys(['baidu', 'sogo', '360'])
>>> dict.values()
dict_values(['www', 'www', 'www'])

  以上三种方法获取到的值可和list()函数配合使用,取出该值。

  ⑥:字典更新update()

>>> dict
{'baidu': 'www', 'sogo': 'www', '360': 'www', 'google': 'google'}
>>> dict.update({"baidu":"baidu.com"})
>>> dict
{'baidu': 'baidu.com', 'sogo': 'www', '360': 'www', 'google': 'google'}
>>> dict.update({"yahoo":"yahoo.com"})
>>> dict
{'baidu': 'baidu.com', 'sogo': 'www', '360': 'www', 'google': 'google', 'yahoo': 'yahoo.com'}
>>> 

  由上代码可知,update()方法,当键值存在则更新对应值,否则在字典后追加新的键值对应关系。

猜你喜欢

转载自www.cnblogs.com/louis181214/p/10119982.html
今日推荐