1 条件语句
注意缩进,注意缩进,注意缩进!
示例:
if True: print('条件成立执行的代码1') print('条件成立执行的代码2') # 下方的代码没有缩进到if语句块,所以和if条件无关 print('我是无论条件是否成立都要执行的代码')
1.1 if else
这一部分问题不大。
示例:
if 条件: 条件成立执行 else: 条件不成立执行 #if else后都要加:
1.2 多重判断
注意这里是elif不是else if
if 条件1: 条件1成立执行的代码1 条件1成立执行的代码2 ...... elif 条件2: 条件2成立执行的代码1 条件2成立执行的代码2 ...... ...... else: 以上条件都不成立执行执行的代码
1.3 三目运算符
初学者这里可能需要花时间理解,注意啦!
语法如下:
值1 if 条件 else 值2
示例:
a = 1 b = 2 c = a if a > b else b print(c) # 过程:这里的条件是a>b是否成立,由所给的值可知,不成立,这是取值2:b,最终把b的值赋值给c输出,所以结果为2. --- 展开 if a>b: c=a else c=b
实验案例
一个根据年龄段收费的游乐场: 4岁以下免费; 4~18岁收费25美元; 18岁(含)以上收费40美元。 如果只使用一条if 语句,该如何确定门票价格呢?假设年龄为12岁,打印一条包含门票价格的消息。
例如:当设定age小于4岁时,输出:Your admission cost is $0
age=12 # 下方按照定义if语句 if age<4: print("Your admission cost is $0") elif age<18: print('Your admission cost is $25') else: print("Your admission cost is $40") #out Your admission cost is $25
2 循环语句
2.1 while循环
循环的目的:让代码重复执行!
通过前面条件语句的学习,结合其他语言的基础,语法这块也就不难理解!
while 条件: 条件成立重复执行的代码
示例:计算1-10的累加和
i=1 result=0 while i<=10: result+=i i+=1 print(result)
2.2 break和continue
这一部分可以通过下面这个小故事来理解,问题不大。
举例:一共吃5个苹果,吃完第一个,吃第二个…,这里"吃苹果"的动作是不是重复执行? 情况1:如果吃的过程中,吃完第三个吃饱了,则不需要再吃第4个和第五个苹果,即是吃苹果的动作停止,这里就是break控制循环流程,即终止此循环。 情况2:如果吃的过程中,吃到第三个吃出一个大虫子...,是不是这个苹果就不吃了,开始吃第四个苹果,这里就是continue控制循环流程,即退出当前一次循环继而执行下一次循环代码。
- break终止循环不会执行else下方缩进的代码
- continue退出循环的方式执行else下方缩进的代码
2.3 for循环
for循环这一部分与C、Java之间还是存在一些差异!
语法如下:
for 临时变量 in 序列: 重复执行的代码1 重复执行的代码2 ......
示例:
str = 'matches' for i in str: print(i)
2.4 循环中的else
这一部分也是差异点,python中的循环语句可以加else!
语法如下:
for 临时变量 in 序列: 重复执行的代码 ... else: 循环正常结束之后要执行的代码 --- while 条件: 条件成立重复执行的代码 else: 循环正常结束之后要执行的代码
循环中的else语句,一般都会执行,当有break跳出循环时,else中的语句不执行!
实验案例
根据给定的日涨跌幅数据,进行代码编写。
1、一旦首次跌幅大于1%,就终止整个程序,并输出已经访问的数据。需要运用for、if和break搭配的语句。
2、 将代码1简单修改,改为一旦首次跌幅超过1%,就终止整个程序,并输出跌幅超过1%的这个数据。
# 已知数据 r_list=[0.0192,-0.0001,0.006,0.0074,-0.0127,-0.0067,0.0095,-0.0095] # 在下方填写第一题代码 for i in r_list: if i<-0.01: break print('涨跌幅数据',i) print('---------') # 在下方填写第二题代码 for i in r_list: if i<-0.01: break print('涨跌幅数据',i) # out 涨跌幅数据 0.0192 涨跌幅数据 -0.0001 涨跌幅数据 0.006 涨跌幅数据 0.0074 --------- 涨跌幅数据 -0.0127