赋值语句
赋值语句用赋值运算符=
来实现。赋值语句有一些特殊的使用技巧。
序列解包
多个赋值操作可以同时进行。也可以交换两个或者多个变量。事实上,这里所做的事情叫做序列解包或者叫递归解包——将多个值的序列揭开,然后放到变量的序列中。popitem方法将键-值作为元组放回。
>>> scoundrel={
'name':'Robin','girlfriend':'Marioon'}
>>> key,value=scoundrel.popitem()
>>> key
'name'
>>> value
'Robin'
Python还可以链式赋值。也可以进行增量赋值。
条件语句
语句块
语句块并不是一种语法。语句块适当条件为真时执行或执行多次的一组语句。在代码前放置空格来缩进语句即可创建语句块。块中的每行都要缩进形同的量。在Python中,冒号用来表示语句块的开始,块中的每个语句都是缩进的(缩进的量相同)。当回退到和已经闭合的块一样的缩进量时,就表示当前块已经结束。
布尔变量
下面的值在作为布尔表达式的时候,会被编译器看作是假(false):
False
、None
、0
、""
、()
、[]
、{}
除去上面的表达式之外的其他表达式在作为布尔表达式的时候都为真。bool函数可以用来转换其他值为布尔值。
条件执行和if语句
一个例子if-else
name=raw_input('What is your name ?')
if name.endswith('Gumy'):
print('Hello,Mr.Gumy!')
else:
print('Hello,stranger!')
语句elif
elif是else-if的缩写。如下例:
num=raw_input('Enter a number:')
if num>0:
print('This is a positive number.')
elif num==0:
print('This number is zero.')
else:
print('This is a negative numeber.')
嵌套
name=raw_input('what is your name?')
if name.endswith('Gumy'):
if name.startswith('Mr.'):
print('Hello,Mr.Gumy')
elif name.startwith('Mrs.'):
print('Hello,Mrs.GGumy')
else:
print('Hello,Gumy')
else:
print('Hello,stranger')
条件运算符
- 比较运算符
表达式 | 描述 |
---|---|
x==y | x等于y |
x | x小于y |
x<=y | x小于或等于y |
x>y | x大于y |
x>=y | x大于或等于y |
x!=y | x不等于y |
x is y | x和y是同一个对象 |
x is not y | x和y不是同一个对象 |
x in y | x是y容器(序列、字典)的成员 |
x not in y | x不是y容器的成员 |
分析:==
和is
是两个不同的运算,==
用来判断两个表达式的值是否相等,而is
用来判断两个表达式是否是同一个对象(相同的内存)。如下例:
>>>