## 条件判断和循环
[TOC]
>[info] #### if else, if elif else的使用
* ##### if else
~~~
age = 10
if age > 5 :
print "大于5"
else:
print "小于5"
~~~
* ##### if elif else
~~~
age = 20
if age > 18:
print "你的年龄", age
elif age < 15:
print "小于", 15
else:
print "无"
~~~
* ##### if
~~~
age = 10
if age: #如果age为真则成立
print age
else:
print 'not'
~~~
>[info] #### range, for, while 的使用
* ##### range 的使用
~~~
print range(10)
#结果:[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
~~~
* ##### for
~~~
for i in range(5):
print i
~~~
* ##### 带下标的for
~~~
>>> for i, value in enumerate(['A', 'B', 'C']):
... print i, value
~~~
* ##### 一行写成的for
~~~
>>>[x for x in range(10) ]
~~~
* ##### 两层for 一行代码完成
~~~
>>>[ x + y for x in range(5) for y in range(5)]
~~~
* ##### 循环出目录
~~~
>>> import os # 导入os模块,模块的概念后面讲到
>>> [d for d in os.listdir('.')] # os.listdir可以列出文件和目录
['.emacs.d', '.ssh', '.Trash', 'Adlm', 'Applications']
~~~
* ##### dict的iteritems()可以同时迭代key和value
* for循环其实可以同时使用两个甚至多个变量,比如dict的iteritems()可以同时迭代key和value
~~~
>>> d = {'x': 'A', 'y': 'B', 'z': 'C' }
>>> for k, v in d.iteritems():
... print k, '=', v
...
y = B
x = A
z = C
~~~
* ##### while
~~~
i = 20
while i > 0:
print i
i = i - 1
~~~
>[success] #### int 转换成数字
~~~
i = "100"
i = int(1)
~~~
* ##### 判断是不是数字还是字符串
~~~
>>> x = 'abc'
>>> y = 123
>>> isinstance(x, str)
True
>>> isinstance(y, str)
False
~~~