Python基础-语句
条件语句
条件语句是更具判断条件的真伪来执行下一步操作
在Python中除了0和null的值都为真(True),0和null都为False
条件语句的基本形式:
If 判断条件:
执行语句(1)
else:
执行语句(2)
注意:这里没有小括号,也没有{}表示代码块
判断条件真执行语句(1)否则执行语句(2)
当判断条件有多个的话,可以使用条件嵌套的形式
if 判断条件1:
执行语句1……
elif 判断条件2:
执行语句2……
elif 判断条件3:
执行语句3……
else:
执行语句4……
eg.
num = 5
if num == 3: # 判断num的值
print '老板'
elif num == 2:
print '用户'
elif num == 1:
print '员工'
elif num < 0: # 值小于零时输出
print '错误'
else:
print '默认值' # 条件均不成立时输出
注意:Pythin中没有switch语句,所以判断多个条件的话只能用elif
循环语句
程序是按顺序执行的,如果我们要重复执行一段代码直到得出我们想要的结果,那么我们有时候尽管可以列出同一段代码,但是也是有限制的,必须是有限的步骤,否则我们无法做到。
即使是有限的步骤,我们也不必须一个个执行语句的写,系统给我们提供了循环语句,这样,只要给出个终止条件即可得出结果(死循环除外)
执行语句可以是单个语句或语句块。判断条件可以是任何表达式,任何非零、或非空(null)的值均为true。
当判断条件假false时,循环结束。
在java中提供了continue,和break,那么Python同样也提供了
其中continue 用于跳过该次循环
break 则是用于退出循环
这时候 我们就可以控制死循环了,当达到我们想要他停止的条件之后,就可以使用break结束整个循环
循环语句的分类
While循环
While的基本格式:
while 判断条件:
执行语句……
eg.
count = 0
while (count < 9):
print 'The count is:', count
count = count + 1
print ("循环结束",)
在while中和java不一样的 Python没有do…while,但是提供了while…else
while … else 在循环条件为 false 时执行 else 语句块:
eg.
count = 0
while count < 5:
print count, " 小于 5"
count = count + 1
else:
print count, " 不小于n 5"
for循环
for循环可以遍历任何序列的项目,如一个列表或者一个字符串。
for循环的语法格式:
for iterating_var in sequence:
statements(s)
两个例子
for a in 'Python': # 第一个实例
print '当前字母 :', a
fruits = ['桃子', '苹果', '西瓜']
for f in fruits: # 第二个实例
print '当前水果 :', f
print "结束!"
以上的例子很像我们java中的foreach
那么是否还有像java中的索引循环?答案是肯定的
eg.
#这里用到了索引取值,在后面的内容将会学到
fruits = ['桃子', '苹果', '西瓜']
for index in range(len(fruits)): #内置函数 len()和range() ,分别表示列表长度和序列数
print '当前水果 :', fruits[index]#索引取值
print "结束!"
For循环也有else
注意:for … else ,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
循环嵌套
无论是for还是while循环都可以嵌套 且可以相互嵌套
Python for 循环嵌套语法:
for iterating_var in sequence:
for iterating_var in sequence:
statements(s)
...
statements(s)
Python while 循环嵌套语法:
while expression:
while expression:
statement(s)
...
statement(s)
pass 语句
Python pass是空语句,是为了保持程序结构的完整性。
pass 不做任何事情,一般用做占位语句。
eg.
#输出 Rocky的每个字母
for l in 'Rocky':
if l == 'c':
pass
print '这是 pass 块'
print '当前字母 :', l
print "结束!"
执行结果:
当前字母 : R
当前字母 : o
这是 pass 块
当前字母 : c
当前字母 : k
当前字母 : y
结束!