python 基础 条件语句
python 流程控制
1、if语句
python的if 语句类似其它语言,if 语句包含一个逻辑表达式,使用表达式比较,在比较结果的基础上作出决定。 -if experssion(条件表达式): statement(s)(声明) # Python 使用缩进作为其语句分组的方法,建议使用4个空格代替缩进。 #if语句代码段的开始有两个冒号来决定; | 例子: 如果修改为:
IndentationError: expected an indented block #此类异常99%都是因为缩进问题导致。 |
if 单分支 *逻辑值(bool)用来表示诸如:对于错,真于假,空于非空等概念。 *逻辑值包含了两个值 -True:表示非空的量(比如:string,tuple,list,set,dictonary等),所有非零数。 -False:表示0,None,空的量等。 | #此处的表示式1+1既不是True 也不是 False,也会产生True的效果 #注意此处的ok没有打印,相当于False! #调用函数,返回1 ,观察结果。
|
else 双分支 - 如果在条件表达式if语句解析为0或false值。else语句是一个可选的语句,并最多只能有一个else 语句。 | 范例: #注意else 后要有冒号,且要有相对应的if。 |
if elif 多分支
-elif语句可以让你检查多个表达式为真值,并执行一个代码块,elif语句是可选的,可以有任意数量的elif。 | 范例:
|
嵌套的if...elif.... else构造
| 范例: #尽量减少避免嵌套语句的使用,不便于阅读。 |
and 、 or 、 not逻辑运算符 | 范例:
|
2、for 循环
在python for 循环遍历序列,如一个列表或一个字符。 -for 循环语法: 注:如果一个序列包含一个表达式列表,它是第一个执行。然后,该序列中的第一项复制给迭代变量iterating_var.接下来,执行语句块。列表中的每个项目分配到iterating_var,代码块被执行,直到真个序列被耗尽。格式遵循代码块缩进原则。 | #"x"迭代变量可以是任意值,到序列”abcd“ 取到值后执行代码段"hellow word"#注意:开启语句执行。 #"迭代",指重复执行一个指令。 | ||
循环结构是用于迭代多个项的for语句,迭代形式可以循环序列的所有成员。 *range(i,j,[,步进值]) #可以快速生成序列 -如果所创建的对象为整数,可以用range。 -i为初始数值, -j为终止数值,但不包括在范围内,步进值为可选参数,不选的话默认为1。 -i不选的话默认为0 | 范例:
| ||
计算从1+100 |
| ||
-迭代序列指数(索引) —遍历每个项目的另一种方法是由序列本身的偏移指数(索引): | #也可以通过字典中items 的方法获取到里面所有的键值段。 print c.items() [(1, 111), (2, 222), (3, 333)] #a,b,c,d=t t当中的值会依次赋给a,b,c,d,利用这个特性使用for 循环 #利用字典items()方法将字典中key、value以元组的方式返回。
| ||
在for 循环中正常结束之后else 就会执行 |
| ||
如果是for循环非正常执行结束,else:是不执行的 |
| ||
exit() 程序跳出: |
| ||
continue跳出当次循环的余下语句,进入下次循环: | 。 |
pass 占位桩(在语句中执行pass时未做任何操作): |
|
4、while循环
while循环,直到表达式变为假。表达的是一个逻辑表达式,必须返回一个true或false值。
语法:
while expression:
statement(s)
范例:
[root@zabbix tools]# cat while.py
#!/usr/bin/python
while True:
print "#"*50
#上述是一个死循环!while会根据后边的条件表示式进行判断,当为True的时候执行代码段,所以在写while语句的时候一定要有条件让它结束。
[root@zabbix tools]# cat while.py
#!/usr/bin/python
while True:
print "#"*50
x=raw_input("please input somethong,q fro quit:")
if x == "q":
break
You have new mail in /var/spool/mail/root
[root@zabbix tools]# python while.py
##################################################
please input somethong,q fro quit:a
##################################################
please input somethong,q fro quit:q
[root@zabbix tools]#
或者直接写在表达式里:
[root@zabbix tools]# python while.py
##################################################
please input something ,q for quit:
[root@zabbix tools]# cat while.py
#!/usr/bin/python
x = ""
while x != "q":
print "#"*50
x=raw_input("please input something ,q for quit:")
if not x :
break
[root@zabbix tools]#
#注意取反
while 中的else:
[root@zabbix tools]# python while.py
##################################################
please input something ,q for quit:
[root@zabbix tools]# python while.py
##################################################
please input something ,q for quit:q
ending......
[root@zabbix tools]# cat while.py
#!/usr/bin/python
x = ""
while x != "q":
print "#"*50
x=raw_input("please input something ,q for quit:")
if not x :
break
else:
print "ending......"
# 当while中当代码段执返回为false时,会执行else,break是跳出。
[root@zabbix tools]# python while.py
##################################################
please input something ,q for quit:w
one more time~~~~
##################################################
please input something ,q for quit:w^H
one more time~~~~
##################################################
please input something ,q for quit:c
##################################################
please input something ,q for quit:q
one more time~~~~
ending......
[root@zabbix tools]# cat while.py
#!/usr/bin/python
x = ""
while x != "q":
print "#"*50
x=raw_input("please input something ,q for quit:")
if not x :
break
if x == "c":
continue
print "one more time~~~~"
else:
print "ending......"
相关文章