背景
昨天,为小朋友介绍了 什么是变量、什么是运算符以及运算符的优先级、什么是数据类型以及类型之间的相互转换。
今天,为小朋友介绍程序设计语言中最常见的两种语句,第一种是条件语句,第二种是循环语句。
Python 基本语法
<b>1. 条件语句</b>
<u>if 语句</u>
if expression:
expr_true_suite
- if 语句的
expr_true_suite
代码块只有当条件表达式expression
结果为真时才执行,否则将继续执行紧跟在该代码块后面的语句。 - 单个 if 语句中的
expression
条件表达式可以通过布尔操作符and
,or
和not
实现多重条件判断。
if 2 > 1 and not 2 > 3:
print('Correct Judgement!')
<u>else 语句</u>
if expression:
expr_true_suite
else
expr_false_suite
- Python 提供与 if 搭配使用的 else,如果 if 语句的条件表达式结果布尔值为假,那么程序将执行 else 语句后的代码。
temp = input("不妨猜一下小哥哥现在心里想的是那个数字:")
guess = int(temp)
if guess == 8:
print("你是小哥哥心里的蛔虫吗?")
print("哼,猜对也没有奖励!")
else:
print("猜错了,小哥哥现在心里想的是8!")
print("游戏结束,不玩儿啦!")
- Python 使用缩进而不是大括号来标记代码块边界,因此要特别注意 else 的悬挂问题。
例子1
hi = 6
if hi > 2:
if hi > 7:
print('好棒!好棒!')
else:
print('切~')
例子2
temp = input("不妨猜一下小哥哥现在心里想的是那个数字:")
guess = int(temp)
if guess > 8:
print("大了,大了")
else:
if guess == 8:
print("你是小哥哥心里的蛔虫吗?")
print("哼,猜对也没有奖励!")
else:
print("小了,小了")
print("游戏结束,不玩儿啦!")
<u>elif 语句</u>
if expression1:
expr1_true_suite
elif expression2:
expr2_true_suite
.
.
elif expressionN:
exprN_true_suite
else:
expr_false_suite
- elif 语句即为 else if,用来检查多个表达式是否为真,并在为真时执行特定代码块中的代码。
temp = input('请输入成绩:')
source = int(temp)
if 100 >= source >= 90:
print('A')
elif 90 > source >= 80:
print('B')
elif 80 > source >= 60:
print('C')
elif 60 > source >= 0:
print('D')
else:
print('输入错误!')
<u>assert 关键词</u>
-
assert
这个关键词我们称之为“断言”,当这个关键词后边的条件为 False 时,程序自动崩溃并抛出AssertionError
的异常。 - 在进行单元测试时,可以用来在程序中置入检查点,只有条件为 True 才能让程序正常工作。
assert 3 > 7
<b>2. 循环语句</b>
<u>while 循环</u>
while expression:
suite_to_repeat
- while循环的
suite_to_repeat
子句会一直循环执行,直到expression
值为布尔假
count = 0
while count < 3:
temp = input("不妨猜一下小哥哥现在心里想的是那个数字:")
guess = int(temp)
if guess > 8:
print("大了,大了")
else:
if guess == 8:
print("你是小哥哥心里的蛔虫吗?")
print("哼,猜对也没有奖励!")
count = 3
else:
print("小了,小了")
count = count + 1
print("游戏结束,不玩儿啦!")
<u>for 循环</u>
for iter_var in interables:
suite_to_repeat
- 每次循环,
iter_var
迭代变量被设置为可迭代对象interales
的当前元素,提供给suite_to_repeat
语句块使用。
例子1
for i in 'ILoveLSGO':
print(i, end=' ') #不换行输出
例子2
member = ['张三', '李四', '刘德华', '刘六', '周润发']
for each in member:
print(each)
for i in range(len(member)):
print(member[i])
<u>range() 函数</u>
range([start,] stop[, step=1])
- 这个BIF(Built-in functions)有三个参数,其中用中括号括起来的两个表示这两个参数是可选的。
-
step=1
表示第三个参数的默认值是1。 -
range
这个BIF的作用是生成一个从start
参数的值开始到stop
参数的值结束的数字序列,该序列包含start
的值但不包含stop
的值。
例子1
for i in range(2, 9): #不包含9
print(i)
例子2
for i in range(1, 10, 2):
print(i)
<u>break 语句</u>
- break语句可以跳出当前所在层的循环。
import random
secret = random.randint(1, 10) #[1,10]之间的随机数
while True:
temp = input("不妨猜一下小哥哥现在心里想的是那个数字:")
guess = int(temp)
if guess > secret:
print("大了,大了")
else:
if guess == secret:
print("你是小哥哥心里的蛔虫吗?")
print("哼,猜对也没有奖励!")
break
else:
print("小了,小了")
print("游戏结束,不玩儿啦!")
<u>continue 语句</u>
- continue终止本轮循环并开始下一轮循环。
for i in range(10):
if i % 2 != 0:
print(i)
continue
i += 2
print(i)
<u>pass 语句</u>
def a_func():
# SyntaxError: unexpected EOF while parsing
-
pass
语句的意思是“不做任何事”,如果你在需要有语句的地方不写任何语句,那么解释器会提示出错,而pass
语句就是用来解决这些问题的。
def a_func():
pass
<b>3. 综合例子</b>
passwdList = ['123', '345', '890']
valid = False
count = 3
while count > 0:
password = input('enter password:')
for item in passwdList:
if password == item:
valid = True
break
if not valid:
print('invalid input')
count -= 1
continue
else:
break
总结
好了,到此为止有关于条件和循环语句的内容就介绍完了。小朋友们要刻意练习哦,基于这些语句,我们后面能做很炫的游戏来玩儿!是不是有些小期待!
相关图文: