简介
python 中语句相关的一些基本常识:
- python 中语句末尾不需要使用分号 “;”
- if/while 等条件语句中条件表达式不需要小括号 “()”
- python 中没有 switch/case 这类语句
- print 语句在 python 2.6 以下版本不能使用括号,以后版本可以使用逗号分隔多个参数,打印时自动填充一个空格间隔
赋值语句
Python 支持多个变量同时赋值(又称为序列解包),例如:
x, y, z = 1, 2, 3 # 左右两边都是元组(元组可以省略括号) x, y, z = 1, 2 # ValueError: need more than 2 values to unpack x, y, z = 1, 2, 3, 4 # ValueError: too many values to unpack x, y, *z = 1, 2, 3, 4 # ok,python 3 支持,使用 * 接收多余的值,z 的值为 [3, 4] x, *y, z = 1, 2, 3, 4 # ok,y 的值为 [2, 3],z 的值为 4
另外 python 也支持链式赋值,例如:
x = y = 123 # 等价于 y = 123 和 x = y 两条语句顺序执行,但是 python 中不可以这样写 x = (y = 123)
if 语句
示例:
age = 3 if age >= 18: print 'adult' elif age >= 6: print 'teenager' else: print 'kid'
注意:条件表达式不需要使用小括号。
for 语句
python 中没有 C 风格的 for 语句,python 中用 “*for x in <range-or-list>:*” 的形式。
示例一:遍历某个数值区间:
for i in range(5): # 等价于 range(0, 5),range(start,stop,step) 函数中 start 和 step 是可以省略的,start 默认为 0 , step 默认为 1 print i
示例二:遍历数组元素:
names = ['Michael', 'Bob', 'Tracy'] for name in names: print name for i in range(len(names)): print names[i]
示例三:遍历元组元素:
for week in ('Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday'): print week
示例四:遍历字典类型数据:
jack = { 'gender': 'male', 'age': 23, 'email': '[email protected]' } # 遍历所有的 keys for key in jack: print key + ': ' + str(jack[key]) # age is a number, python does not allow concatenate 'str' and 'int' objects for key in jack.keys(): print key # 遍历所有 values for value in jack.values(): print value # 遍历所有的 key/value pairs for key, value in jack.items(): print key, value
示例五:检查一个值是否可以遍历(迭代):
>>> from collections import Iterable >>> isinstance('abc', Iterable) # str是否可迭代 True >>> isinstance([1,2,3], Iterable) # list是否可迭代 True >>> isinstance(123, Iterable) # 整数是否可迭代 False
while 语句
示例:
i = 0 while i < 10: print i i += 2
continue 语句 和 break 语句
Python 中的 continue 语句和 break 语句 与 C/C++ 中的相应语句作用类似:
- continue:同 C/C++,结束本次循环,进入下一次循环条件判断。
- break:同 C/C++,退出当前循环。
pass 语句
示例一:定义一个空函数:
def foo(): pass
示例二:if 语句“体”(body)为空:
if a > 5: pass
import 语句
几种常用的形式:
- import module
- from module import name
- from module import name1, name2, name3, ...
- from module import *
完。