当前位置: 首页 > wzjs >正文

南庄网站建设优化设计电子课本下载

南庄网站建设,优化设计电子课本下载,网站建设资源平台,购物网站可以备案吗目录 前言一、from import二、python中的包三、异常处理机制四、python中常用标准库 五、迭代器与生成器 5.1创建一个迭代器5.2 生成器总结 前言 书接上文 Python匿名函数与面向对象编程核心解析:从lambda到继承多态全掌握-CSDN博客文章浏览阅读785次,…

目录

  • 前言
  • 一、from import
  • 二、python中的包
  • 三、异常处理机制
  • 四、python中常用标准库 
  • 五、迭代器与生成器 
  • 5.1创建一个迭代器
  • 5.2 生成器
  • 总结

前言

书接上文

Python匿名函数与面向对象编程核心解析:从lambda到继承多态全掌握-CSDN博客文章浏览阅读785次,点赞26次,收藏6次。本文全面解析Python匿名函数lambda的语法与使用场景,并深入剖析面向对象编程的核心概念,包括类与对象的定义、属性操作、继承与多态的实现,以及模块化开发技巧,帮助开发者掌握从基础语法到高级特性的完整知识体系,提升代码设计能力与工程化思维。 https://blog.csdn.net/qq_58364361/article/details/146144610?fromshare=blogdetail&sharetype=blogdetail&sharerId=146144610&sharerefer=PC&sharesource=qq_58364361&sharefrom=from_link


一、from import

直接导入某个模块某个功能

先看文件1

def fun_name(name):print(f"{name}今天要考试了")def fun_pt():print("中午吃什么?")

再看文件2

from day001 import fun_name  #引入一个单独的函数fun_name("小白")


二、python中的包

当有多个模块不加区分直接放一起很不合理可以模块组织一起创建

也是由模块组成所以导入模块导入一样

这里引入包中的文件采取

from 包文件夹名.包字文件夹名..文件名 impor 要调用的函数名


三、异常处理机制

l1 = [2, 3, 6]
try:print(l1[8])
except IndexError:print("error")
else:print("ok")
finally:print("处理结束")
print("aaa")

l1 = [2, 3, 6]
try:print(l1[8])
except Exception as e:print("error")print(e)  #报错原因
else:print("ok")
finally:print("处理结束")
print("aaa")


四、python中常用标准库 

名称

描述

os

os 模块提供了许多与操作系统交互的函数,例如创建、移动和删除文件和目录,以及访问环境变量等。

sys

sys 模块提供了与 Python 解释器和系统相关的功能,例如解释器的版本和路径,以及与 stdin、stdout 和 stderr 相关的信息。

time

time 模块提供了处理时间的函数,例如获取当前时间、格式化日期和时间、计时等。

datetime

datetime 模块提供了更高级的日期和时间处理函数,例如处理时区、计算时间差、计算日期差等。

math

math 模块提供了数学函数,例如三角函数、对数函数、指数函数、常数等。

json

json 模块提供了 JSON 编码和解码函数,可以将 Python 对象转换为 JSON 格式,并从 JSON 格式中解析出 Python 对象。

numpy

一个用于维度数组计算的库

opencv

一个用于计算机视觉的库

matplotlib

一个用于数据可视化的库(绘图)

scikit-learn

一个用于机器学习的库

tensorflow

一个用于深度学习的库

threading

一个用于设置多线程的库


五、迭代器与生成器 

迭代是Python访问集合中元素的一种方式,迭代器是一个可以记住遍历的位置的对象。

迭代器对象从集合的第一个元素开始访问,直到所有的元素被访问完结束。迭代器只能往前不会后退。

通过索引的方式进行迭代取值,实现简单,但只适用于序列类型:字符串、列表、元组

对于没有索引的字典、集合等非序列类型,需要使用不依赖索引来进行迭代取值的方法,使用迭代器

字符串、列表、元组、字典、集合、打开的文件都是可迭代对象

迭代器有两个基本的方法:iter() 和 next()。

l1 = [2, 5, 8, 3, 6]
it = iter(l1)  # 创建迭代器对象
print(next(it))  # 输出迭代器下一个元素
print(next(it))

或使用for循环遍历

l1 = [2, 5, 8, 3, 6]
it = iter(l1)  # 创建迭代器对象
for i in it:print(i)


5.1创建一个迭代器

把一个类作为一个迭代器使用,需要再类里实现两个方法iter()和next()

iter() 方法返回一个特殊的迭代器对象,这个迭代器对象实现了 next() 方法并通过 StopIteration 异常标识迭代的完成。

next() 方法会返回下一个迭代器对象

创建一个返回数字的迭代器,起始值是10,每次递增10

class MyNum:def __iter__(self):self.a = 10return selfdef __next__(self):x = self.aself.a += 10return xmy_class = MyNum()
my_iter = iter(my_class)print(next(my_iter))
print(next(my_iter))
print(next(my_iter))

StopIteration 异常用于标识迭代的完成,防止出现无限循环的情况,在__next__()方法中我们可以设置在完成指定循环次数后触发 StopIteration 异常来结束迭代

class MyNum:def __iter__(self):self.a = 10return selfdef __next__(self):if self.a <= 50:       x = self.aself.a += 10return xelse:print('迭代结束')raise StopIterationmy_class = MyNum()
my_iter = iter(my_class)print(next(my_iter))
print(next(my_iter))
print(next(my_iter))


5.2 生成器

 在 Python 中,使用了 yield 的函数被称为生成器(generator)。

yield 是一个关键字,用于定义生成器函数,生成器函数是一种特殊的函数,可以在迭代过程中逐步产生值,而不是一次性返回所有结果。

跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。

每次使用 yield 语句生产一个值后,函数都将暂停执行,等待被重新唤醒。

yield 语句相比于 return 语句,差别就在于 yield 语句返回的是可迭代对象,而 return 返回的为不可迭代对象。

然后,每次调用生成器的 next() 方法或使用 for 循环进行迭代时,函数会从上次暂停的地方继续执行,直到再次遇到 yield 语句

def Fun(n):while n > 0:yield nn -= 1# 创建生成器对象
g1 = Fun(5)# 通过迭代生成器获取值
print('next方法:', next(g1))
print('next方法:', next(g1))# 使用 for 循环迭代生成器
for i in g1:print('for循环:', i)# 运行结果:
# next方法: 5
# next方法: 4
# for循环: 3
# for循环: 2
# for循环: 1

在这个代码中,Fun 函数是一个生成器函数。它使用 yield 语句逐步产生从 n 到 1 的倒序数字。在每次调用 yield 语句时,函数会返回当前的倒序数字,并在下一次调用时从上次暂停的地方继续执行。

创建生成器对象并使用 next() 函数或 for 循环迭代生成器,我们可以逐步获取生成器函数产生的值。在这个例子中,我们首先使用 next() 函数获取前两个倒序数字,然后通过 for 循环获取剩下的三个倒序数字。

生成器函数的优势是它们可以按需生成值,避免一次性生成大量数据并占用大量内存。此外,生成器还可以与其他迭代工具(如for循环)无缝配合使用,提供简洁和高效的迭代方式


总结

        本文系统解析Python编程中的核心概念与实用技巧,涵盖模块导入、包管理、异常处理、标准库应用及迭代器与生成器的深入剖析。首先通过实例演示from...import语法实现模块函数的精准导入,强调模块化编程的优势;在包管理部分,阐述如何通过目录结构组织多模块以提升代码可维护性。异常处理机制详细讲解try-except-else-finally的层级结构,对比IndexError与通用Exception捕获的适用场景,并展示异常信息的提取方法。常用标准库部分列举os、sys、datetime等核心库的功能,扩展至numpy、OpenCV等第三方库在数据与AI领域的应用。迭代器部分从基础iter()next()操作切入,结合自定义迭代器类的实现(如__iter____next__方法的重写),阐明迭代终止的StopIteration异常控制逻辑;生成器则通过yield关键字解析惰性计算的实现原理,对比生成器函数与普通函数的差异,并以递减数列生成示例揭示生成器在内存效率上的优势。全文贯穿代码实例,帮助开发者掌握高效、健壮的Python编程范式。

http://www.dtcms.com/wzjs/218333.html

相关文章:

  • 免费的创建个人网站搜一搜排名点击软件
  • 高端网站制作 上海网络营销和传统营销有什么区别
  • 做设计的都用那些网站网络营销的手段有哪些
  • 无锡做网站seo百度一下点击搜索
  • 南京移动网站建设天津网站排名提升多少钱
  • 哪个网站可以接cad图纸做优化大师有必要安装吗
  • 做网站开发要具备什么知识如何自己制作网站
  • 91色做爰免费网站关键词优化是怎样收费的
  • 专门帮做ppt的网站吗品牌营销推广方案怎么做
  • 如何做网站新手个人教程软文的目的是什么
  • 建设监理工程师网站百度搜索排名怎么靠前
  • 网站版面布局设计的原则百度灰色词优化排名
  • 怎么做qq刷赞等网站网站友情链接的好处
  • 各种类型网站建设口碑好保定seo网络推广
  • 色一把看片网 做最好的在线看片网站如何做推广推广技巧
  • 长沙优质营销网站建设设计seo高级优化技巧
  • 泉州网站建设公司在百度上怎么卖自己的产品
  • 学习网站建设深圳网络营销信息推荐
  • 用.net做视频网站的案例真正免费建站
  • 流行的网站建设技术有哪些专业推广公司
  • wordpress获取当前页面的别名宁波seo外包代运营
  • 网站企业备案代理湘潭网站定制
  • 镇江网站建设优化上海空气中检测出病毒
  • 济南做设计公司网站成都专业网站推广公司
  • 中国建设网官网网站百度搜索指数排行
  • 嘉兴建设工程造价信息网站网页推广怎么做的
  • 手机建立网站app深圳外包网络推广
  • 做网站都去哪里找模板深圳seo优化排名
  • 西安城乡建设委员会网站打不开电话号码宣传广告
  • 网站怎么做网上报名友情链接2598