python学习日记【14 - 模块&列表推导式&生成器】

本文深入讲解Python模块的创建与使用,包括模块化优势、导入方式、属性与方法详解,以及列表推导式和生成器等高级特性。通过实例演示如何利用这些特性提升编程效率。

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

模块

  • 模块化指将一个完整的程序分解成一个个的小模块
  • 通过将模块组合,来搭建出一个完整的程序
  • 模块化的有点
  • 方便开发
  • 方便维护
  • 模块可以复用

模块的创建

  • 在Python当中一个py文件就是一个模块
  • 在一个模块中引入外部模块 import 模块名(模块名就是py文件)
  • 可以引入同一个模块多次,但是模块的实例只会创建一次
  • import 模块名 as 模块别名
  • 在一个模块内部都有一个__name__。通过它我们可以获取模块的名字
  • 如果py文件直接运行时,那么__name__默认等于字符串’__main__’。__name__属性值为__main__的模块是主模块。一个程序中只有一个主模块

模块的使用

  • 访问模块中的变量 语法是 模块名.变量名
  • 访问模块中的函数 语法是 模块名.函数名
  • 访问模块中的对象 语法是 模块名.对象名
  • 我们也可以引入模块中部分内容 语法 from 模块名 import 变量,变量…
  • 还有一种引入方式 语法 from 模块名 import 变量 as 别名

属性和方法(补充)

  • 类属性
  • 实例属性
  • 实例方法
  • 实例.实例方法()
  • 类对象.实例方法(实例)
  • 类方法(cls)@ classmethod
  • 静态方法 @staticmethod

列表推导式

  • 语法: [变量 for 变量 in 列表 if 条件]
list1 = ['a', 'bbbb', 'ccc', 'ddd', 'eeee']

r = [name for name in list1 if len(name) > 3]
print(r)

>>> ['bbbb', 'eeee']

r = [i for i in range(9)]
print(r)

>>> [0, 1, 2, 3, 4, 5, 6, 7, 8]

生成器

  • 方法一: 生成器 = (变量 for 变量 in 列表 if 条件)
  • 方法二:
def fn():
代码块
yield
  • next方法可以获取生成器里面的元素
  • 生成器创建一次就只能执行一次
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值