Python基础系列--第三课

Python基础

流程控制介绍:计算机执行代码的顺序就是流程,对计算机代码执行顺序管理就是流程控制,流程控制一共分为三类:
1、顺序结构
2、分支结构/选择结构
3、循环结构

一、python的分支结构

1、单项分支(顺序结构)
2、双项分支(选择结构)
3、多项分支(循环结构)
4、巢状分支

1、单项分支(顺序结构)

特征:
if条件表达式为真,则执行if之后所控制的代码组,如果为假,则不执行后面的代码组
if后面的代码是在条件表达式为真的情况下执行,所以称之为真区间或者if区间

print(”开始“)
if true #如果判断的值是假,否则不执行
	print(‘’选择性语句“)
print("结束")

2、双向分支(选择结构)

特征:双向分支有2个区间,分别是True控制的if区间和False控制的else区间(假区间)

	print("start")
	num = int(input("请输入您的成绩"))
	if num>=60:
	   	 print("成绩及格")
	else:
		print("成绩未及格")
		
	print("end")

3、多分支结构(选择结构)

特征:
多项分支结构可以添加无限个elif分支,无论如何只会执行一个分支
执行完一个分支后,分支结构就会结束,后面的分支都不会判断也不会执行
多项分支的判断顺序是自上而下逐个分支进行判断
else可以没有
在python中没有switch -case语句

#多向分支结构
print("-start-")
num = int(input("请输入一个成绩:"))
if num>=90:
    print("成绩优秀")
elif num>=75:
    print("成绩良好")
elif num>=60:
    print("通过测试")
else:
    print("未通过测试")
print("-end-")

4、巢状分支(选择结构)

巢状分支是其他分支结构的嵌套结构,无论哪个分支都可以嵌套

#巢状分支结构
print("start")

num = int(input("请输入您的成绩:"))
if num >=75:
    if num>=90:
        print("成绩优秀")
    else:
        print("成绩良好")
else:
    if num>=60:
        print("成绩及格")
    else:
        print("成绩不及格")

print("end")

循环结构

1、while循环

while循环中的else是在while条件表达式为假的情况下执行的代码内容,一般用于判断起始条件是否为假等相关操作
死循环是不会终止的循环,通过将用于判断的条件表达式设置为永远True来实现

#循环输出1~10的值
print("循环开始")
i = 1
while i <= 10:
    print(i)
    i = i + 1

print("循环结束")

while无限循环

print("程序开始")

while True: #先设置while的判断条件永远为真
	a = input("请输入字母") #从键盘获取一个值
	if a == q: #设置循环结束条件
		break #当条件满足,循环结束

print("程序结束")

2、for循环(用于遍历数据)

特征
for…in…用于遍历容器类的数据(字符串,列表,元组,字典,集合)

for 变量 in 容器:
	python代码,可以在此使用变量

for i in "abcd"
	print("i")
又:
for 变量1,变量2 in 容器:
	python代码,可以在此使用变量1和变量2

2.1、配合range和 len的使用
for i in range(10,2,-2):
    print(i)

配合len使用

a=["aaa","bbb","ccc"]
for i in range(len(a)):
    print(i,"=>",a[i])

函数输出的结果

2.2、输出九九乘法表
for j in range(1,10):
    for i in range(1,j+1):
        print("{}*{}={:<4}".format(i,j,i*j),end=" ")
    print("")

输出结果:

3、break和continue跳出循环

for i in range(10):
	if i == 6:
		break #结束整个循环
		continue #结束单次循环

输出的结果:
break
1 2 3 4 5
continue
1 2 3 4 5 7 8 9

3.1、数据查找功能

通过for循环比对一个值是否在一组数据中

a=[10,20,30,40]
m=10
for i in a:
    if m == i:
        print("存在")
        break
    else:
        print("不存在")
print("end")

以上输出的结果为:存在
如果m的值为100,输出的结果为不存在

函数定义

一、要点:

1、函数代码块必须以def开头(defined)关键字开头,后接函数标识符名称圆括号
2、任何传入参数的自变量必须放在圆括号中,圆括号之间可以用于定义参数
3、函数的第一行语句可以选择性的使用文档字符串,用于存放函数的说明
4、函数内容以冒号起始,并且缩进
5、return[表达式]结束函数,选择性的返回一个值给调用方。不带表达式的return相当于返回None

二、基本格式

注意:函数名命名规则和变量基本一样。
def 函数名():
函数功能代码…

#调用函数
函数名()

三、函数定义分类

函数定义分类有6大类,分别是:基本函数格式、带有参数的函数格式、带有默认值的参数、关键字参数、收集参数(带)、多种参数混合

3.1、基本函数格式
del aa():
	print("Hello Word")

aa()
3.2、带有参数的函数格式

def 函数名(参数,参数…):
函数的功能代码…

函数名(参数,参数…)

注意:
形参:形式上的参数,如上def 函数名()括号里面的是形参,形式上的参数
实参 :实际上的参数,调用函数时()里面的参数是实参
实参将值传递给形参的过程本质上就是简单的变量赋值,参数需以正确的顺序传入函数。调用时的数据必须和声明时的一样。

def aa(m1,m2): #函数定义
    print(m1+m2) #函数功能

aa(3,5) #函数调用

以上运行结果为:8

3.3、带有默认值的参数

def 函数名(形参=默认值,形参=默认值,…):
函数的功能代码…

#函数调用方法
函数名() #调用函数时所有形参采用默认值操作
函数名(实参,实参…) #调用时形参采用实参的值,而抛弃默认的值

注意
在此情况下,使用实参值覆盖原有形参的默认值,本质上是变量的重新赋值操作
调用函数时,如果没有传参数,则会使用默认值。

def aa(name="zhangsan",age=25,sex="man"):#定义函数
    print("姓名:{}:年龄:{}:性别:{}".format(name,age,sex))#函数功能

aa()#调用函数,不传参数
aa("lisi",45,"women")#调用函数,传参数

函数运行结果:
函数运行结果:

3.4、带关键字的参数函数

def 函数名(形参=默认值,形参=默认值,…):
函数的功能代码…

#调用函数
函数名(形参=实参,形参=实参…)#

注意
关键字参数就是调用函数时,在实参前面制定形参的做法,为了防止参数按照默认位置传递出现的错误
关键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值
使用关键字参数允许函数调用时参数的顺序与声明时不一致,因为python解释器能够用参数名匹配参数值。

def aa(name="zhangsan",age=25,sex="man"):#定义函数
    print("姓名:{}:年龄:{}:性别:{}".format(name,age,sex))#函数功能

aa(age=24,sex="girl",name="wangjuan")#实参顺序可以与声明不一致,强行制定形参与实参的
对应关系

关键字参数运行结果
关键字参数运行结果

3.5、收集参数(带*)
3.5.1、非关键字收集参数

def 函数名(*参数名):
函数功能代码…

#调用函数
函数名(实参,实参…) #没有数量限制

注意
非关键字收集参数,在形参前面加一个*即可
非关键字收集参数收集实参组成一个元组
非关键字收集参数,仅收集没有任何形参接受的非关键字实参
非关键字收集参数和普通的形参可以共存

def aa(*org):#在形参前面加*
    print(org)

aa(10,14,20,34)#数量没有限制

参数运行结果
参数运行结果

可以利用关键字收集参数求,一组数据的累加值

def aa(*org):#在形参前面加*
    total=0
    for i in org:
        total += i
    print("累加值是:",total)

aa(10,20,)#数量没有限制

计算的结果是:30

3.5.2、带关键字收集参数

def 函数名(**形参名):
函数功能代码…

#函数调用
函数名(形参=实参,形参=实参…)没有数量限制

注意
关键字收集参数,在形参前面加两个*
关键之收集参数,收集的结果组成一个字典,关键字成为字典的键,实参成为值
关键字收集参数,仅收集没有任何形参接受 的关键字参数
关键字参数可以和普通形参共存

#带关键字收集参数
def aa(**org):
    print(org)

aa(name="zhangsan",age=25,sex="man")

代码执行结果
运行结果

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值