2.运算符优先级
运算符 | 描述 |
lambda | Lambda表达式 |
or | 布尔“或” |
and | 布尔“与” |
not x | 布尔“非” |
in,not in | 成员测试 |
is,is not | 同一性测试 |
<,<=,>,>=,!=,== | 比较 |
| | 按位或 |
^ | 按位异或 |
& | 按位与 |
<<,>> | 移位 |
+,- | 加法与减法 |
*,/,% | 乘法、除法与取余 |
+x,-x | 正负号 |
~x | 按位翻转 |
** | 指数 |
x.attribute | 属性参考 |
x[index] | 下标 |
x[index:index] | 寻址段 |
f(arguments...) | 函数调用 |
(experession,...) | 绑定或元组显示 |
[expression,...] | 列表显示 |
{key:datum,...} | 字典显示 |
'expression,...' | 字符串转换 |
对lambda比较迷惑
3.表达式
控制流
1. if语句
if
语句用来检验一个条件,如果条件为真,我们运行一块语句(称为if-块),否则我们处理另外一块语句(称为else-块)。else从句是可选的。
例子:
number=23
guess=int(raw_input('enter an integer:'))
if guess==number:
print 'right.'
print "(but you do not win any prizes!)"
elif guess<number:
print 'no,it is a little higher than that.'
else:
print 'no,it is a little lower than that.'
print 'done.'
2. while语句
只要在一个条件为真的情况下,while语句允许重复执行一块语句,while语句是所谓循环语句的一个例子,while语句有一个可选的else从句.
True和false被称作布尔类型,可以等效的理解为值1和0.
例子:
number=23
running=True
while running:
guess=int(raw_input('enter an integer:'))
if guess==number:
print 'right.'
running=False
elif guess<number:
print 'no,it is a little higher than that.'
else:
print 'no,it is a little lower than that.'
else:
print 'the while loop is over.'
print 'done.'
3. for循环
For…in在一序列对象上递归即逐一使用队列中的每个项目.
内建的range函数生成数的序列,默认的,range步长是1,如果为range提供第三个数,那么它就是步长,range向上延伸到第二个数,即它不包含第二个数.
例子:
for i in range(1,89,2):
print i
else:
print 'the for loop is over.'
4. break语句
break语句用来终止循环语句的,即哪怕循环条件没有称为false或序列还没有完全递归,也停止执行循环语句.
例子:
while True:
s=raw_input('enter something:')
if s=='quit':
break
print 'Length of the string is',len(s)
print 'done.'
5. continue语句
continue语句被用来告诉Python跳过当前循环块中的剩余语句,然后,继续进行下一轮循环.
例子:
while True:
s=raw_input('enter something:')
if s=='quit':
break
if len(s)<3:
continue
print 'input is of sufficient length.'