简单学python《九》——逻辑结构

本文介绍了Python中的逻辑结构,包括分支结构和循环结构。分支结构利用if-else语句实现条件判断,多分支使用elif。循环结构涵盖while和for循环,讲解了它们的使用方法及break和continue的作用。此外,还简要提到了函数的概念。

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

在实际中, 我们需要在满足某种条件后才去做某事,比如只有在周末才去逛街;或者需要重复做某件事,比如在流水线的工作。而程序就是用来解决生活中的问题,所以Python也实现了这样的结构,分别为分支结构与循环结构。

 

1) 分支结构

 

分支在Python中使用if语句。基本结构是

If 条件:

# 条件成立执行的语句写在此处

else:

# 条件不成立时执行此处的语句

 

条件的执行结果是布尔型数据。即为:如果True,执行if下面的语句,如果False就执行else下面的语句。注意if下面的语句需要缩进4个空格或一个tab

 

condition = [1,2,3,4]

if len(condition) > 3: # 判断condition的长度是否大于3

    print('变量 condition 的长度是大于 3 ') # 大于3时执行

else:

    print('变量 condition 的长度是不大于 3 ') # 否则执行这里的代码

 

# 上面的if语句已经完成,程序会接着执行下面的

if 2 in condition: # 2 in [1,2,3,4]in 操作表示判断 2 是不是在 [1,2,3,4]

    print('变量 condition 包含 2 这个元素')

else: print('变量 condition 不包含 2 这个元素') # 若只执行一句,可直接在后面

 

多分支:

If 条件1:

# 条件1成立时执行此处的代码

elif 条件2:

# 条件1不成立,条件2成立执行此处

else:

# 条件1不成立,条件2不成立执行此处

 

name = 'xiaoming'

week = 6

if name == 'xiaohong':

    print('我的名字是'+name)

elif week == 6:

    print(name + ' '+str(week)+"逛街")

else: print('全部条件都不成立')

注意:判断条件是布尔运算式的结果,可使用andornot

 

2) 循环结构

 

Python中的循环结构有两种,whilefor循环语句,for循环主要从集合中取元素,元素的个数即为循环次数,每次循环是对取出元素进行操作;while循环用在其他需要循环的场景。

 

while循环

while condition:

# 内部为循环时执行的语句

if condition_break: #

break # 在循环中执行到break会退出整个循环

if condition_continue:

continue # 在循环中执行到continue会终止本次循环进入下一次循环

当循环条件conditionTrue时进入循环,为False时退出循环

i = 0

names = ['hei', 'ming', 'hong', 'gang']

while i < len(names):

    print('本次循环我是 xiao'+ names[i])

    i = i+1

print('循环结束')

i = -1

list_int = list(range(10))

print(list_int)

while i < len(list_int):

    i = i+1

    if list_int[i]%2==1:

        continue # 当数字是奇数时执行continue进入下一次循环

    if list_int[i] > 6:

        break # 当数字大于6时终止循环

    print(list_int[i])

print('循环结束')

 

for循环

for循环用来从集合(包括列表,元组,字典和一些其他结构等)中获取每一个元素进行操作。

for arg in collections:

    # arg进行操作

 

collections是一个集合,arg是每次取出的元素,for内部就是对各元素的操作。

 

for color in ['', '', '', '']:

    print('此时使用的颜色是:' + color)

print('颜色循环结束')

 

py = {'name': 'Python', 'learn': 'complex', 'type': 'big data'}

for key, value in py.items(): # 字典的items函数获得的是,每个键值对合成一个元组,这些元组组成了一个集合,而通过for循环就可以获得集合中的每个键值对

    print(key + ' 对应的值是 ' + value)

print('字典循环结束')

 

for index, var in enumerate(range(10, 16)):

    # enumerate函数获取集合中的值与对应的位置索引, 然后通过for循环依次取出

    print('位置 ' + str(index) + ' 的值是 ' + str(var) )

print('enumerate函数循环结束')

 

for i in range(10):

    if i%2 == 1:

        continue # 如果是奇数时进入下一次循环

    if i > 8:

        break # 如果取出的数字大于8时跳出循环

    print(i**2) # 打印数字的平方

print('循环结束')

 

for循环主要用来取集合中的元素进行操作,其都可以用while循环改写。需要注意的是continuebreak,在循环中作用分别是终止本次循环进入下一次循环和终止整个循环。

2.6 函数

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码集合,其能提高应用的模块性和代码的重复利用率。在Python中有很多内置的函数,比如经常使用的print等,在一些对象中也有对象可调用的函数,比如列表和元组等的一系列操作函数,而我们也可以自定义函数。

函数由函数名,参数,返回值和函数内部一系列的代码组成。下面讲解函数的定义。

 

1) 无参函数

def func_name():

    '''

    这里是函数的文档

    # 三个引号的字符串可作为多行注释

    '''

    print('这是一个无参函数')

    a = 1

    b = 2

    print('计算 a + b = ' + str(a+b))

    return a+b # return后面就是函数的返回值,若没有return, 接收返回值是空

# 上面定义了一个函数,但并不会被执行,只有调用才会执行

sum_ab = func_name() # 调用函数,就会执行其中的代码, sum_ab获取返回值

print(sum_ab) # 3

 

注意:使用def定义一个函数,函数名与变量的命名要求相同,函数中的代码需缩进4个空格或一个tab

 

2) 函数传参

def output_info(name, age):

    '''

    name : 人名

    age : 年龄

    '''

    print('打印一个人的年龄')

    print(name + ' 的年龄是 ' + str(age))

# 调用函数

output_info('小明', 39)

# 可进行指定参数传入

output_info(age = 26, name = '小黑')

 

注意:参数传入后作为变量使用

 

3) 默认参数

def learn(name, lang='Python'):

    print(name + ' 正在学习 ' + lang + ' 语言')

# 可以在参数指定一个值,若调用时不传入该参数,则使用默认

learn('小刚')

learn('小红', 'C')

 

注意:默认参数需写在后面

 

4) 可变个数的参数

def my_sum(a, *b):

    # 加上星号的参数可以接收多个传入参数,并以元组保存

    print(b)

    sum = a

    for value in b:

        sum = sum + value # 将所有参数相加

    print(sum)

    return sum

sum_1 = my_sum(1,2,3,4)

print(sum_1)

sum_2 = my_sum(1,2,3,4,5)

print(sum_2)

 

注意:接收变参的参数需放在普通参数和默认参数后面

 

5) 可变个数的命名参数

def output_infos(name, **kwargs):

    '''

    两个星号的kwargs可以接收多个命名参数传入,并以字典形式保存

    '''

    print('个人信息:')

    for key, value in kwargs.items():

        print(name + ' ' + str(key) + ' 信息为 ' + str(value))

output_infos('小明', age=28, height=178, addr='上海')

 

注意:接收可变数量命名参数的参数需放在函数最后。

 

6) 匿名函数

 

顾名思义,匿名函数就是一个隐藏了名字的函数。因为函数也是Python的对象,可作为参数和返回值,所以在函数作为参数时,可以使用匿名函数传入,简洁明了。

匿名函数使用lambda表达式定义。

mul = lambda x,y: x*y # 定义匿名函数并赋值于变量s,调用s就是调用该匿名函数

result = mul(3, 4) # 接收匿名函数的返回值

print(result) # 12

'''

上面的匿名函数作用等效于下面的函数

def mil(x, y):

    return x*y

result = mul(3)

print(result)

'''

# 匿名函数的使用

result = map(lambda x:x*2, [1,2,3,4])

print(list(result)) # [2, 4, 6, 8]

'''

map函数第一个参数传入只有一个参数的函数,该参数函数对后面集合的每个元素进行操作

'''

注意lambda与冒号之间是匿名函数的参数,有多个用逗号隔开,冒号后只能写一个表达式,表达式的结果就是匿名函数的返回值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值