映像和集合类型

一、映射类型:字典
   1、字典的创建和赋值
 Python Code 
1
2
3
>>> dict1 {'name''earth''port'80}
>>> dict1
{'name''earth''port'80}
  
  2、从2.3版本后可以使用内建方法fromkeys()来创建默认的字典(字典中元素具有相同的值,如果没给出,默认为None)
 Python Code 
1
2
3
4
5
6
>>> ddict {}.fromkeys(('x''y'), -1)
>>> ddict
{'y'-1'x'-1}
>>> ddict {}.fromkeys(('x''y'))
>>> ddict
{'y'None'x'None}
 
  ***更聪明的办法
 Python Code 
1
2
3
4
5
>>> dict1 ddict.copy()
>>> dict1
{'y'None'x'None}
>>> ddict
{'y'None'x'None}
  
  3、访问字典的值(下面为两种访问方法)
 Python Code 
1
2
3
4
5
6
7
8
9
10
>>> for key in dict1.keys():
...     print 'key %s, value %s' %(key, dict1[key])
... 
key name, value earth
key port, value 80
>>> for key in dic1t:
...     print 'key %s, value %s' %(key, dict1[key])
... 
key name, value earth
key port, value 80
   1>要得到字典中某个元素的值,如下:
 Python Code 
1
2
>>> dict1['name']
'earth'
 
  4、字典的更新
 Python Code 
1
2
3
4
5
6
>>> dict1
{'name''earth''port'80}
>>> dict1['name''venus'
>>> dict1['port'666 
>>> dict1
{'name''venus''port'666
  
  5、字典的删除和元素的删除
 Python Code 
1
2
3
4
5
6
7
8
>>> dict1
{'name''venus''port'666}
>>> del dict1['name']
>>> dict1
{'port'666}
>>> del dict
>>> dict1
<<span style="color:#8000ff;">type 'dict'>
 ***也可以使用:dict.clear()来进行删除字典里面的所有元素

二、映射类型内建方法
  1、dict.items() 返回一个包含字典中键、值对元组的列表
 Python Code 
1
2
3
>>> dict1 {'name''hellow''key'110}
>>> dict1.items()
[('name''hellow'), ('key'110)]
  
  2、dict.keys() 返回一个包含字典中键的列表
 Python Code 
1
2
3
4
>>> dict1
{'name''hellow''key'110}
>>> dict1.keys()
['name''key']
  
  3、dict.values() 返回一个包含字典中所有值的列表
 Python Code 
1
2
>>> dict1.values()
['hellow'110]
  
  4、dict.update(dict2) 将字dict2的键-值对添加到字典dict中
 Python Code 
1
2
3
4
>>> dict2 {'name1''world''key'100}
>>> dict1.update(dict2)
>>> dict1
{'name''hellow''key'100'name1''world'}
 
   5、dict.copy() 用一个变量接收,返回一个拷贝过来的dict字典
 Python Code 
1
2
3
4
5
>>> dict1 ddict.copy()
>>> dict1
{'y'None'x'None}
>>> ddict
{'y'None'x'None}
 说明:1>在字典中,不允许一个键对应多个值(如果出现,不会报错但是会以从左往右的顺序将最后一个值给那个键)
           2>在字典中所有的键必须是可哈希的(所有的不可变类型都是可哈希的)
三、集合类型
  说明:set()和frozenset()工厂函数分别用来生成可变和不可变的集合
  1、创建集合类型并赋值、访问、更新、删除
 Python Code 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
>>> set('check')
>>> s
set(['h''c''e''k'])
>>> 'k' in s
True
>>> 'c' not in s
False
>>> s.add('z')
>>> s
set(['h''c''z''e''k'])
>>> s.update('python')
>>> s
set(['c''e''h''k''o''n''p''t''y''z'])
>>> s.remove('z')
>>> s
set(['c''e''h''k''o''n''p''t''y'])
>>> -= set('python')
>>> s
set(['c''e''k'])
>>> del s
>>> s
Traceback (most recent call last):
  File ""line 1in 
NameErrorname 's' is not defined
  
  2、集合类型的操作符
  1>联合(|)  2>交集(&)  3>差补/相对补集(-)  4>对称差分(^)
 Python Code 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
>>> set('check')
>>> set('python')
>>> s
set(['h''c''e''k'])
>>> t
set(['h''o''n''p''t''y'])
>>> s|t
set(['c''e''h''k''o''n''p''t''y'])
>>> 
>>> s&t
set(['h'])
>>> 
>>> t
set(['c''e''k'])
>>> 
>>> t
set(['p''c''e''t''y''k''o''n'])
  
  3、内建函数
  1>add(obj) 在集合中添加一个对象obj
  2>remove(obj) 从集合中删除对象obj
  3>discard(obj) 如果obj是集合中的元素,从集合中删除这个对象
  4>pop() 删除集合中的任意一个对象,并返回它
  5>clear() 删除集合中的所有元素

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值