python 之随手记

一、python之continue继续循环

使用continue可以跳过continue后的循环体,直接执行下次循环。

使用场景举例:计算1-100之间所有奇数的和,可以使用continue这样实现:

>>>sum = 0
>>>x = 0
>>>while True:
>>>    x = x + 1
>>>    if x > 100:
>>>        break
>>>    if x%2==0:
>>>        continue
>>>    sum=sum+x
>>>print sum

二、Python之dict

1、什么是dict?

前面我们已经知道,list 和 tuple 可以用来表示顺序集合,例如,班里同学的名字:

['David', 'Lianlian', 'Xuanxuan']

或者考试的成绩列表:

[95, 85, 59]

但是,要根据名字找到对应的成绩,用两个 list 表示就不方便。

如果把名字和分数关联起来,组成类似的查找表:

'David' ==> 95
'Lianlian' ==> 85
'Xuanxuan' ==> 59

给定一个名字,就可以直接查到分数。

Python的 dict 就是专门干这件事的。用 dict 表示“名字”-“成绩”的查找表如下:

d = {
    'David': 95,
    'Lianlian': 85,
    'Xuanxuan': 59
}

我们把名字称为key,对应的成绩称为value,dict就是通过 key 来查找 value

花括号 {} 表示这是一个dict,然后按照 key: value, 写出来即可。最后一个 key: value 的逗号可以省略。

由于dict也是集合,len() 函数可以计算任意集合的大小:

>>> len(d)
3

注意: 一个 key-value 算一个,因此,dict大小为3。

2、访问dict

2.1 访问方式1

我们已经能创建一个dict,用于表示名字和成绩的对应关系:

d = { 
    'David': 95,
    'Lianlian': 85, 
    'Xuanxuan': 59 
}

那么,如何根据名字来查找对应的成绩呢?dict可以简单地使用 d[key] 的形式来查找对应的 value,比如我想查询David的成绩:

如果访问不存在的key值,会报错:

 

2.2 访问方式2

第二个访问方式是使用dict本身提供的一个 get 方法,在Key不存在的时候,返回None:

>>> print d.get('David')
95
>>> print d.get('Paul')
None
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章