Python-流程控制学习总结

这篇博客总结了Python的流程控制,包括if条件语句、for循环、while循环的使用,以及如何运用break、continue和exit来控制流程。此外,还详细探讨了自定义函数,涵盖函数格式、嵌套、形参与实参的区分,如位置参数、默认参数、可变参数和关键字参数,以及函数的返回值和变量的作用域概念。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

if 语句

if 要判断的条件(True):
    条件成立的时候,要做的事情
elif 要判断的条件(True):
    ...
elif ...
    ...
else:
    条件不成立的时候要做的事情
#if … elif … elif … 序列用于替代其它语言中的 switch 或 case 语句

for 语句

#遍历条件:一个列表或者一个字符串,通常与range()函数搭配使用
for  变量 in 遍历条件:
    执行的语句
else:
    每一次迭代都执行
range()函数
range(start, stop[, step])
start: 计数从 start 开始。默认是从 0 开始。例如range5)等价于range05;
stop: 计数到 stop 结束,但不包括 stop。例如:range05) 是[0, 1, 2, 3, 4]没有5
step:步长,默认为1。例如:range05) 等价于 range(0, 5, 1)

while

# 条案为真即满足
while 条件满足:
    满足条件执行的语句
else:
    不满足条件执行的语句

break、continue、exit

break:跳出整个循环,不会再循环后面的内容
continue:跳出本次循环,continue后面的代码在本次循环中不会执行
exit():结束程序的运行
for i in range(10):
    if i == 5:
        break         				#结果:0.1.2.3.4.hello
        # 或者 continue				#结果:0.1.2.3.6.7.8.9.hello
        # 或者 exit()       		#结果:0.1.2.3.4
    print(i)
print('hello')

自定义函数

自定义函数格式

# 如何定义一个函数
def 命名():
	执行语句
    return 			#语句从函数中返回一个值,不带表达式的 return 返回 None

# 例子
def hello():
    print('hello')
    print('python')
    return 
    #语句从函数中返回一个值,不带表达式的 return 返回 None
# 通过函数名来调用函数
a=hello()
print(a)

结果:
hello
python
None

函数嵌套

#函数里面嵌套函数
def westos():
    print('is westos')
    def python():
        print('is python')
    python()
westos()
结果:
is westos
is python

参数:形参、实参

# 定义函数的时候的变量叫形参(形参名可以任意)
def welcome(a):					#a为形参
    print('hello',a)

# 真实的数据信息,调用函数的时候传递的参数叫实参
welcome('tom')					#tom、lily为实参
welcome('lily')
结果:
hello tom
hello lily

形参:位置参数、默认参数、可变参数、关键字参数

# 位置参数:形参和实参数量必须保持一致
def getInfo(name,age): # 按照位置传递参数
    print(name,age)
getInfo('westos',11)
getInfo(11,'westos')
getInfo(age=11,name='westos')

# 默认参数
def mypow(x,y=2):		#如果实参y没有,默认输入为2
    print(x**y)
mypow(2,3)
mypow(2)
结果:
8
4

# 关键字参数
def getInfo(name,age): 
    print(name,age)
getInfo(name='westos',age=11)	# 按照形参关键词传递参数
结果:
westos 11

# 可变参数
#加了一个星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。
#加了两个星号 ** 的参数会以字典的形式导入
ddef mysum(*args):					# 参数打包 在形参前加*
    print(11,*args)
    print(12,args)
    sum = 0
    for item in args:
        sum += item
    print(13,sum)
    print('#'*30)
nums1 = [1,2,3,4]
nums2 = {1,2,3,4}
mysum(1,2,3,4,5)
mysum(*nums1)					 # 参数解包 在实参前加*
mysum(*nums2)
结果:
11 1 2 3 4 5
12 (1, 2, 3, 4, 5)
13 15
##############################
11 1 2 3 4
12 (1, 2, 3, 4)
13 10
##############################
11 1 2 3 4
12 (1, 2, 3, 4)
13 10
##############################

# **kwargs是一个字典 可以传递任意多个key-value
def getStuInfo(name,age,**kwargs):
    print(name)
    print(age)
    print(kwargs)
d = dict(a=1,b=2)
# 如果要对字典进行解包 一个* 获取所有的key值
print(*d)
getStuInfo('westos',11,sex=1,score=100)
结果:
a b
westos
11
{'sex': 1, 'score': 100}

返回值

"""
返回值:函数运行的结果 还需进一步操作 就给函数一个返回值
return用来返回函数的执行结果,如果函数没有返回值 默认返回None
一旦遇到return函数执行结束 后面的代码不会执行
多个返回值的时候哦,python会帮助我们封装成一个元组类型
"""
def mypow(x,y=2):
    return x**y,x+y,x-y
    print('hello')
print(mypow(4,1))
a = mypow(3)
print(a)
结果:
(4, 5, 3)
(9, 5, 1)

变量作用域

"""
局部变量:
在函数内部定义的变量 只在函数内部起作用 
函数执行结束后 变量会自动删除
"""
a = 1
print('outside:',id(a))
def fun():
    a = 5
    print('inside:',id(a))
fun()
print(a)
print(id(a))
结果:
outside: 9720480
inside: 9720608
1
9720480


"""
全局变量
在函数内部定义的全局变量 不仅函数内部起作用 
函数执行结束后 也会改变函数外部同名全局变量
"""
a = 1
print('outside:',id(a))
def fun():
    global a 					#声明a为全局变量
    a = 5
    print('inside:',id(a))
fun()
print(a)
print(id(a))
outside: 9720480
inside: 9720608
5
9720608
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值