从零到入职-番外篇-Python-7

流程控制与函数

流程控制
各个语言中,流程控制语句无非就三种
1.顺序结构
2.选择分支结构
这里需要注意一下,在Python中,只有if……else结构
在这里插入图片描述
提醒一下,在Python中书写代码一定要注意代码的缩进。
在这里插入图片描述
在这里插入图片描述

3.循环结构
在这里插入图片描述
这里为啥只说了一个循环结构呢,别着急,for很重要,并且他不算是严格意义上的循环结构
在这里插入图片描述
列表也是一样的操作。

我们着重讲一下字典的操作
在这里插入图片描述
这里打印出来的是我们字典里面的键
就相当于在这里插入图片描述
若果想遍历值
在这里插入图片描述
两种写法
最主要的是如何同时遍历键与值
在这里插入图片描述
这里用到了一个我们前面没讲到的内置方法 items 这个方法的作用是把字典变成一个个的元组
(key,value)



很多个。

当然如果不想元组的形式输出,我们可以这样写
在这里插入图片描述
python是一个很开放的语言,有些技巧多学学总会有好处,写之前你也没想到python的for可以这样写。

既然讲到了选择分支跟循环结构,那就要说说两个关键字
break 结束所在的一个循环,执行下面的代码
continue 暂停本次循环,立即执行下次循环
光说没用,我们来看例子
在这里插入图片描述
当然,我在这里遇到一个问题,困扰了我十几分钟,就是如果程序我这样写,结果会是啥样
下面展示一些 内联代码片

// A code block
var foo = 'bar';
i = 0
while i <= 10:
    if i == 3:
        continue
    elif i == 6:
        break
    else:
        pass
    print(i)
    i += 1

我把运行结果放在下面
在这里插入图片描述
这是为什么呢?
从左边可以看到,我们的程序还没有结束,还在运行。
因为如果把递增放在continue下面,continue暂停之后,下面的代码是没有运行的,所以没法递增,自然卡在这里。
如果是break可不可以呢,
当然可以,因为break直接跳出循环,之后整个循环都结束了,所以在前在后无所谓,但是,还是要注意代码的逻辑。

接下来说一下else与循环结合的用法
直接上实例来解析用法,
下面展示一些 内联代码片

// A code block
var foo = 'bar';
i = 0
while i <= 10:
    print(i)
    i += 1
else:
    print('循环结束')
i = 0
while i <= 10:
    print(i)
    i += 1
    if i ==3:
        continue
else:
    print('循环结束')
i = 0
while i <= 10:
    print(i)
    i += 1
    if i ==3:
        break
else:
    print('循环结束')

代码实例放在这,自己去试试,我就直接说了

前两个会输出循环结束,第三个不会
因为只有在循环正常结束才会运行else的语句。
当然for循环也是如此。

还记得之前做过的一个练习题吗
求一百以内的素数,我们可以改进一下程序。
下面展示一些 内联代码片

// A code block
var foo = 'bar';
import math

for i in range(2,100):
    if i == 2:
        print(i)
    else:
        for j in range(2,i+1):
            if j == i:
                print(i)
            elif i / j == i // j:
                break

我们来改进一下程序。
在这里插入图片描述
检查一下跟之前的输出有无不同。
range 这个内置函数可以生成指定范围的序列,但是是前闭后开,例如range(2,87)2~86

函数

1.内置函数
2.自定义函数
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Python函数的参数是函数中比较重要的,也是比较灵活的。

函数的参数
1.必须参数
调用时必须按照函数定义的参数列表的顺序依次传递
2.参数的默认值
如果没有传入某个参数的值,使用默认值。
默认参数,调用时可以传值也可以不传。
在这里插入图片描述
3.关键字参数
在调用方法时,使用参数名=传递参数来指定传入的值属于哪个参数
在这里插入图片描述
4.可变参数
*定义的参数 (会将传递的参数封装到元组当中)
**定义的参数 (会将参数自动封装到一个字典中)必须使用关键字的方式传入参数
在这里插入图片描述
在这里插入图片描述
这样就报错了,所以我们使用关键字传入参数试试。
在这里插入图片描述
这样不就对了。

函数的返回值
Python是不需要指定函数是否有返回值,需要返回在后面加上return就好了
求两个数的最大值
在这里插入图片描述
但是呢,在Python中可以返回多个值,很灵活的一个语言。
在这里插入图片描述
返回多个值是封装到一个元组中。当然单独都拿出来可不可以,当然可以
在这里插入图片描述
python是不是很灵活
但是他需要记住的方法以及技巧比较多。

今天就到这里吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值