IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python基础05 -> 正文阅读

[Python知识库]Python基础05

Python基础05

学习05

for循环和可迭代对象遍历
for循环通常用于可迭代对象的遍历。for循环的语法格式如下:
for 变量 in 可迭代对象:
循环体语句

例子:
for x in (20,30,40):
print(x*3)

for y in “abcdef”:
print(y)

for y in list(“abcdef”):
print(y)

d={‘name’ : ‘gaoqi’, ‘age’ : 18, ‘address’ : ‘西三旗001号楼’}
for x in d: #遍历字典所有的key
print(x)

for x in d.keys(): #遍历字典所有的key
print(x)

for x in d.values(): #遍历字典所有的value
print(x)

for x in d.items(): #遍历字典所有的’键值对’
print(x)

range对象
range对象是一个迭代器对象,用来产生指定范围的数字序列。格式为:range(start, end, step)
生成的数值序列从start开始带end结束(不包含end)。若没有填写start,则默认从0开始。step是可选的步长,默认为1。
在这里插入图片描述
例如:
sum_all = 0 #1-100所有数的累加和
sum_even = 0 #1-100偶数的累加和
sum_odd = 0 #1-100奇数的累加和
for num in range(101):
sum_all += num
if num%2 == 0:
sum_even +=num
else:
sum_odd += num
print(“1-100所有数的累加和”, sum_all)
print(“1-100偶数的累加和”, sum_even)
print(“1-100奇数的累加和”, sum_odd)

嵌套循环
一个循环体内可以嵌人另一个循环,一般称为“嵌套循环”,或者“多重循环”。
在这里插入图片描述
例子1:99乘法表:
for m in range(1,10):
for n in range(1,m+1):
print("{0}
{1} = {2}".format(m,n,(m*n)),end="\t")
print() #换行
结果:
在这里插入图片描述
例子2:使用列表和字典存储表格的数据,并且打印薪水大于15000。
在这里插入图片描述

break语句
break语句可用于while和for循环,用来结束整个循环。当有嵌套循环时,break语句只能跳出最近一层的循环。
在这里插入图片描述
continue语句
continue语句用于结束本次循环,继续下一次。多个循环嵌套时,continue也是应用于最近的一层循环。
例子:要求输入员工的薪资,若薪资小于0则重新输入。最后打印录入员工的数量和薪资明细,以及平均薪资。
在这里插入图片描述

else语句
while、for循环可以附带一个else语句(可选)。如果for、while语句没有被break语句结束。则会执行else子句,否则不执行。语法格式如下:
while 条件表达式:
循环体
else:
语句块

或者:
for 变量 in 可迭代对象:
循环体
else:
语句块

例子:
在这里插入图片描述

循环代码优化
虽然计算机越来越快,空间也越来越大,我们仍然要在性能问题上“斤斤计较”。编写循环时,遵守下面三个原则可以大大提高运行效率,避免不必要的低效计算:
1、尽量减少循环内部不必要的计算。
2、嵌套循环中,尽量减少内层循环的计算,尽可能向外提。
3、局部变量查询较快,尽量使用局部变量。
在这里插入图片描述
其他优化手段:
1、连接多个字符串,使用join()而不使用+。
2、列表进行元素插入和删除,尽量在列表尾部操作。

使用zip()并行迭代
我们可以通过zip()函数对多个序列进行并行迭代,zip()函数在最短序列“用完”时就会停止。
在这里插入图片描述
在这里插入图片描述
可以不用zip()函数,也能实现:
在这里插入图片描述

推导式创建序列

推导式是从一个或多个迭代器快速创建序列的一种方法。它可以将循环和条件判断结合,从而避免冗长的代码。推导式是典型的Python风格,会使用它代表你已经超过Python初学者的水平。

列表推导式
列表推导式生成列表对象,语法如下:
[表达式 for item in 可迭代对象]
或则
[表达式 for item in 可迭代对象 if 条件判断]
在这里插入图片描述

字典推导式
字典的推导式生成字典对象,格式如下:
{key_expression : value_expression for 表达式 in 可迭代对象}
类似于列表推导式,字典推导也可以增加if条件判断、多个for循环。
例子:

my_text = ‘i love you, i love sxt, i love gaoqi’
char_count = {c:my_text.count? for c in my_text}
在这里插入图片描述

集合推导式
集合底层还是字典,集合推导没有value,只不过集合里面全是key,无value,集合中key不可重复,出现一次的key,如果再次出现就会被覆盖。
集合推导式生成集合,和列表推导式的语法格式类似:
{表达式 for item in 可迭代对象}
或则
{表达式 for item in 可迭代对象 if 条件判断}

生成器推导式(生成元组)
很多同学可能会问:“都有推导式,元组有没有?”,能不能用小括号呢?
在这里插入图片描述
一个生成器只能运行一次。第一次迭代可以得到数据,第二次迭代发现数据已经没有了。

函数用法和底层分析

在这里插入图片描述
函数的基本概念
1、一个程序由一个个任务组成;函数就是代表一个任务或者一个功能。
2、函数是代码复用的通用机制。

Python函数的分类
在这里插入图片描述
函数的定义和调用
核心要点
python中,定义函数的语法如下:
def 函数名([参数列表]):
‘’‘文档字符串’’’
函数体/若干语句
在这里插入图片描述
在这里插入图片描述

形参和实参
在这里插入图片描述

文档字符串(函数的注释)
程序的可读性最重要,一般建议在函数体开始的部分附上函数定义说明,这就是“文档字符串”,也有人称为“函数的注释”。我们通过三个单引号或则三个双引号来实现,中间可以加入多行文字进行说明。
在这里插入图片描述

返回值
return返回值要点:
1、如果函数体中包含return语句,则结束函数执行并返回值;
2、如果函数体中不包含return语句,则返回None值;
3、要返回多个返回值,使用列表、元组、字典、集合将多个值“存起来”即可。
在这里插入图片描述
在这里插入图片描述

  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2022-01-28 11:52:10  更:2022-01-28 11:53:18 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/16 2:26:15-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码