目录
一、判断语句
1.if 语句
基本形式:
if+要判断的条件+”:”
条件成立时要做的事情
判断条件后会返回bool类型(True/False)
若为True,则条件成立,执行条件成立时需执行的代码,若为False,则不需要执行。
例如
age=20
if age>=18:
print("解除防沉迷")
结果为:
PS:在if语句后,表达条件成立时要做的事情需要进行缩进,当需要执行的有多行代码时,只需要将每一行代码都缩进,而没有缩进的语句视为在if的框架之外。
例如:
age=20
if age>=18:
print("解除防沉迷")
print("将成为大学生")
#两行都有缩进,当if语句成立时都会执行
age=10
if age>=18:
print("解除防沉迷")
print("将成为大学生")
print("时间过得真快")
P2中最后的print没有缩进,不在if框架内,即使条件不成立,依旧会执行
2.if else语句
相比于if语句,else语句可以让条件不成立时执行else里的代码
基本形式为:
例如:
age=int(input("你的年龄:"))
if age>=18:
print("你已解除防沉迷")
else:
print("请好好学习")
3.多条件判断(if-elif-else语句)
基本形式:
if int(input("你现在有多少钱"))>50:
print("你可以买一些牛肉")
elif int(input("你VIP等级为(1-5)"))>4:
print("你可以免费领取一些牛肉")
elif int(input("现在几点了"))>21:
print("你可以拿走一些剩下的牛肉")
else:
print("你没肉吃")
结果为:
4.if else嵌套语句
第二个if由于缩进,因此在第一个if的内容中,因此执行第2个if需要第一个if成立
在if里也可以嵌套多个elif和else
示例:
age=int(input("你的年龄:"))
if age>=18:
print("你是成年人")
if age<30:
print("年龄达标")
if int(input("入职时间:"))>2:
print("你可以免费领取福利")
elif int(input("VIP等级:"))>3:
print("你可以免费领取福利")
else:
print("很遗憾,你不满足条件")
else:
print("很遗憾,你不满足条件")
else:
print("很遗憾,你不满足条件")
二、循环语句
1.while语句
基本形式:
while+条件(布尔类型):
条件成立执行的代码
例如:
i=0
while i<10:
print("我想学好python")
i+=1
其中i+=1使得循环得以终止,为终止条件,若没有终止条件,程序将陷入无限循环
与if 语句一样,使用缩进的方式来表示while语句中要执行的代码部分
示例:
猜数字
随机设置一个1-100的数字,键盘输入进行猜测
#使用import random设置一个随机数
import random
num=random.randint(1,100)
count=0
#设置一个flag作为while执行的条件,True为执行,False为跳出
flag=True
while flag:
guess_num=int(input("请你输入猜测的数字:"))
count+=1
if guess_num==num:
print("yes!")
flag=False
else:
if guess_num>num:
print("bigger")
else:
print("smaller")
#最后统计猜测的次数
print(f"你猜了{count}次")
2.while的嵌套循环
与if语句类似,while的嵌套循环只需要在while语句里用缩进的形式再写一段内层的while的语句
例如:
i=1
while i<=10:
print(f"今天是第{i}天学Python")
#设置内层循环的变量
j=1
while j<=24:
print(f"学习Python第{j}个小时")
j+=1
#以上部分为内层循环
i+=1
print(f"坚持到第{i-1}天,学习到很多Python的知识")
3.补充知识:
(1)实现print语句不换行
基本形式:
print(“print的内容”,end=’ ‘)
例如:
(2)制表符\t实现输出语句的对齐
样本:
在单词的间隙中使用制表符使得上下两句的输出单词对齐
(3)示例
制作乘法口诀:
i=1#用i来表示第i行
while i<=9:
j=1#j决定每行有多少道乘法口诀
while j<=i:#这个条件使得第i行只会有i道口诀
print(f"{j}*{i}={j*i}\t",end='')#制表符\t使乘法口诀能对齐,end=' '使得乘法口诀能不换行输出
j+=1
i+=1
print()#打印空的内容使口诀输出进入下一行,使代码不会只输出一行
输出结果如图:
4.for 循环
基本形式:
示例:
与while循环不同点:for循环没有循环条件,它只能从被处理的数据集中,依次取出内容进行处理
理论上,for循环无法进行无限循环
5.range语句
for循环基本形式中的待处理数据集实际上是序列类型
序列类型包括:字符串,列表,元组
for循环本质:对序列类型进行遍历
(1)range(num)
range(num)可以得到一个0-num-1的序列
例如:
(2)range(num1,num2)
range(num1,num2)可以得到一个num1–(num2-1)的序列
例如:
(3)range(num1,num2,step)
range(num1,num2,step)可以得到num1–(num2-1)的序列,且每个数字间的间隔为step
例如:
(4)range可以决定for循环的循环次数
例如:
5.for循环的嵌套
同while循环,for循环的嵌套只需要在for循环里面用缩进的方式再写一段for循环的语句
例如;
for i in range(1,11):#表示从第1天到第10(11-1)天
print(f"今天是第{i}天学Python")
for j in range(1,24):#表示从第1个小时学到第23个小时
print(f"学习Python第{i}天第{j}个小时")
结果如下:
PS:while与for循环可以相互嵌套
例如:
for i in range(1,11):#表示从第1天到第10(11-1)天
print(f"今天是第{i}天学Python")
j = 1
while j <24:
print(f"学习Python第{i}天第{j}个小时")
j += 1
6.continue和break
(1)continue
作用:中断本次循环,直接进入下一次循环,可用于while,for循环中
例如:
语句3在continue之后被跳过,因此不会执行
在嵌套循环中,continue只对它所在的循环有影响
(2)break
break语句用于结束循环,可用于for,while循环中
例如:
break直接跳出循环因此输出的只有一个语句1和语句4
7.循环案例–发工资
要求结果如下:
import random
i=10000
for a in range(1,21):
num=random.randint(1,10)
if num>=5:
i=i-1000
print(f"向员工{a}发放工资1000元,账户余额还剩余{i}元")
if i==0:
print("工资发完了,下个月再领取吧")
break
else:
print(f"员工{a},绩效分{num},低于5,不发工资,下一位")
continue
以上为自己利用目前所学的知识书写的代码,结果如下:
三、函数
1.函数的定义
函数是组织好的,可重复使用的,用来实现特定功能的代码块
定义语法:
def+函数名(传入参数):
函数体
return返回值
PS:(1)参数不需要,可以省略
(2)返回值不需要,可以省略
(3)函数必须先定义后使用
示例:
2.函数的传入参数
功能:在函数进行计算时,接收外部(调用时)提供的数据
示例:
如上图,
函数定义中,x和y为形式参数(形参),表示函数声明将使用2个参数
参数之间用逗号隔开
函数调用中,9和4为实际参数(实参),表示函数执行时使用的参数值
传入的时候按照顺序并用逗号隔开
3.函数的返回值
返回值就是函数完成后给调用者的结果
示例:
None类型:
当函数中没有使用return返回值时,返回的是None
当return None时,返回的是None
None可用于if判断中,等同于False
None可用于声明变量
例如:age=None
4.函数说明文档
语法形式:
PS:内容得写在函数体之前
例如:
5.函数的嵌套调用
函数的嵌套调用:一个函数里面又调用了另外一个函数
例如:
今天先学到这里,共勉