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

python3 利用生成器生成元组

一.  简介

在 Python 中,并没有直接的“元组推导式”(Tuple Comprehensions)。Python 提供了列表推导式、字典推导式和集合推导式,但并没有为元组提供类似的语法糖。这是因为元组是不可变的数据类型,而推导式的目的是生成新的数据结构,这与元组的不可变性有些冲突。

本文简单学习一下,通过生成器生成元组。

二. python3 中的使用生成器生成元组

1. 语法格式

生成器中语法格式如下:

(expression for item in iterable)
或者
(expression for item in iterable if condition)

exppression:  是对 item 执行的操作或表达式。

item: 是迭代变量,代表 iterable中的每个元素。

iterable: 可以是列表,字典,集合。

if condition: 可选的条件判断,只有满足条件的元素才会被包含在新的元组中。

2. 示例

使用生成器生成元组:

#!/usr/bin/env python3

a = (x**2 for x in range(1, 10))
print(tuple(a))

输出如下:

(1, 4, 9, 16, 25, 36, 49, 64, 81)

带 if condition条件判断,使用生成器生成元组:

#!/usr/bin/env python3

a = (x**2 for x in range(1, 20) if x % 2 == 0)
print(tuple(a))

输出如下:

(4, 16, 36, 64, 100, 144, 196, 256, 324)


http://www.kler.cn/a/469479.html

相关文章:

  • 改进萤火虫算法之一:离散萤火虫算法(Discrete Firefly Algorithm, DFA)
  • UWB实操:用信号分析仪(频谱分析仪)抓取UWB频域的图像
  • 网页数据如何正确copy到postman中
  • R语言的网络编程
  • Debian、Ubuntu 22.04和ubuntu 24.04国内镜像源(包括 docker 源)
  • 【HarmonyOS】鸿蒙应用如何进行页面横竖屏切换以及注意事项,自动切换横竖屏,监听横竖屏
  • 消息中间件在哪些项目中应用较多
  • 一文讲清楚PostgreSQL表膨胀
  • nodemon : 无法加载文件 C:\Program Files\nodejs\node global\nodemon.ps1,因为在此系统上禁止运行脚本
  • 监控k8s pod使用的CPU资源并实现异常重启
  • Python爬虫基础——认识网页结构(各种标签的使用)
  • Redis 基础篇
  • LabVIEW专栏十、工厂模式
  • Python的各种各样基础
  • IDEA 撤销 merge 操作(详解)
  • 安装和配置MySQL教程
  • 科研绘图系列:R语言单细胞数据常见的可视化图形
  • [jsoncpp]JSON序列化与反序列化
  • 基于 Python Django 的社区爱心养老系统
  • 位置编码--RoPE
  • 单细胞组学大模型(7)--- GenePT,一个可以在本地部署和使用的单细胞转录组大模型
  • 【设计模式-1】软件设计模式概述
  • k8s修改存储目录-介绍
  • Docker 安装Elasticsearch搜索引擎 搜索优化 词库挂载 拼音分词 插件安装
  • Linux 防火墙:守护系统安全的坚固防线
  • 今日头条ip属地根据什么显示?不准确怎么办