Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2117074
  • 博文数量: 333
  • 博客积分: 10161
  • 博客等级: 上将
  • 技术积分: 5238
  • 用 户 组: 普通用户
  • 注册时间: 2008-02-19 08:59
文章分类

全部博文(333)

文章存档

2017年(10)

2014年(2)

2013年(57)

2012年(64)

2011年(76)

2010年(84)

2009年(3)

2008年(37)

分类: Python/Ruby

2010-12-16 13:51:30

Python 中的 Dictionary 和 .NET Hashtable / Dictionary 非常类似。

>>>>>> a = {1:"a", 2:"b"}  
>>>>>> a[1]
'a'
>>>>>> b = {'a':100, 'b':200}
>>>>>> b[2]

Traceback (most recent call last):
File
"", line 1, in <module>
b[
2]
KeyError:
2
>>>>>> b['b']
200
>>>>>> a[1]='aaa'
>>>>>> a
{
1: 'aaa', 2: 'b'}
>>>>>> del(a[1])
>>>>>> a
{
2: 'b'}
>>>>>> a[1]='AAAA'
>>>>>> a
{
1: 'AAAA', 2: 'b'}
>>>>>> a.has_key(1)
True
>>>>>> a.keys()
[
1, 2]
>>>>>> a.values()
[
'AAAA', 'b']
>>>>>> a.items()
[(
1, 'AAAA'), (2, 'b')]
>>>>>>

 

Dictionary 的 key 是大小写敏感的。

>>>>>> b = {"a":1, "A":2}  
>>>>>> b["A"]
2
>>>>>> b["a"]
1
>>>>>>

 

可以使用 Get() 方法避免触发 KeyError。

>>>>>> b={'a':1,'A':2}  
>>>>>> b['c']

Traceback (most recent call last):
File
"", line 1, in <module>
b[
'c']
KeyError:
'c'
>>>>>> b.get('c')
>>>>>> b.get('c','default')
'default'
转载自:
阅读(687) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~