Python内置函数enumerate操作可迭代对象及for迭代

enumerate 是 Python 中用于同时获得可迭代对象的元素和它们的索引的内置函数。这对于在循环中需要迭代对象的值以及它们的位置时非常有用。

 以下是 enumerate 的基本语法:for index, value in enumerate(iterable):
# index 是元素的索引。value 是可迭代对象的元素。

import pandas as pd
import numpy as np# 创建一个示例DataFrame
data = {'A': [7, 2, 3], 'B': [3, 5, 6], 'C': [0, 8, 9]}
df = pd.DataFrame(data)# 获取行数和列数
num_rows, num_columns = df.shape# 打印结果
print("行数:", num_rows)
print("列数:", num_columns)# # 使用.values.T 将DataFrame按'列'转换为NumPy数组
# numpy_array = df.T.values# # 打印结果
# print(numpy_array)# 将DataFrame按列转换为numpy数组,enumerate遍历DataFrame的'列'并逐一填充NumPy数组
numpy_data = np.zeros((num_rows,num_columns))
col = df.columns
for i,j in enumerate(col):numpy_data[i]=df[j]
print(numpy_data)

 

fruits = ['apple', 'banana', 'cherry']
for index, fruit in enumerate(fruits):print(f"Index {index}: {fruit}")
fruits = ['apple', 'banana', 'cherry']# 使用 enumerate 查找 'banana' 的位置
for index, fruit in enumerate(fruits):if fruit == 'banana':print(f"'banana' 在位置 {index}")
document = "This is a sample document containing some keywords."keywords = ['sample', 'keywords']# 使用 enumerate 记录关键词的位置
for index, word in enumerate(document.split()):if word in keywords:print(f"'{word}' 在位置 {index}")

迭代 (Iteration):

  • 迭代是一种处理数据集合(如列表、字典、集合等)中的元素的方式。
  • 迭代通常使用 for 循环来完成,但它的目的是遍历容器中的元素而不是简单地重复操作。

示例使用 for 循环进行迭代:

fruits = ['apple', 'banana', 'cherry']
for fruit in fruits:print(fruit)

双重 for 循环(也称为嵌套循环)是一种在循环中嵌套另一个循环的编程结构。它通常用于遍历多维的数据结构,如嵌套列表或矩阵。

matrix = [[1, 2, 3],[4, 5, 6],[7, 8, 9]
]# 使用双重循环遍历二维列表
for row in matrix:for element in row:print(element)

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/109403.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

python之自动化点餐定时任务

1、准备一个可执行的python文件 2、使用定时任务管理器配置定时任务 Cron是linux系统的任务管理器 2.1打开终端或控制台 2.2进入crontab编辑器: crontab -e 编辑crontab文件 crontab -l 列出当前用户的所有定时任务 crontab -r 删除当前用户的crontab文…

通过这个技术,浏览器可以运行Node.js、Rust、Python、PHP、C++、Java代码了!

近日,WebContainers 发布重要更新,WASI(WebAssembly 系统接口)已全面集成到 WebContainers 中。这是一个重要里程碑,它扩大了可以使用浏览器执行的操作,是 Web 开发的全新范例,允许运行大量原生…

浅谈View的绘制流程

Window:每个Activity都会创建一个Window用于承载View视图的显示,Window是一个抽象类存在了一个唯一实现类PhoneWindow DecorView:最顶层的View,是一个FrameLayout子类,最终会被加载到Window当中,它内部只有…

应用在红外线遥控领域中的心率传感信号接收芯片

红外遥控是一种无线、非接触控制技术,具有抗干扰能力强,信息传输可靠,功耗低,成本低,易实现等显著优点,被诸多电子设备特别是家用电器广泛采用,并越来越多的应用到计算机和手机系统中。 红外线…

探讨Acrel-1000DP分布式光伏系统的设计与应用-安科瑞 蒋静

摘 要:分布式光伏发电特指在用户场地附近建设,运行方式以用户侧自发自用、余电上网,且在配电系统平衡调节为特征的光伏发电设施,是一种新型的、具有广阔发展前景的发电和能源综合利用方式,它倡导就近发电,就…

mysql 反斜杠\的坑

mysql会对\进行转义,可能导致问题。 mysql数据库中字段存的带有\,比如: name\pojo 在java代码中使用mybatis查询。 如果是等值查询,这样的不需要处理,好像是因为mybaits框架自动把\变为了\ 如果是模糊查询like, 需要把…

视频太大怎么压缩变小?三分钟学会视频压缩

随着科技的不断发展,视频已经成为了我们日常生活中不可或缺的一部分,然而,大尺寸的视频文件常常会给我们带来诸多困扰,例如发送不便、存储空间不足等等,那么,如何将这些过大的视频文件压缩变小呢&#xff1…

新一代开源语音库CoQui TTS冲到了GitHub 20.5k Star

Coqui TTS 项目介绍 Coqui 文本转语音(Text-to-Speech,TTS)是新一代基于深度学习的低资源零样本文本转语音模型,具有合成多种语言语音的能力。该模型能够利用共同学习技术,从各语言的训练资料集转换知识,来…

LNMP创建论坛

lNmp安装: 一、LNMP LNMP架构是目前成熟的企业网站应用模式之一,指的是协同工作的一整套系统和相关软件, 能够提供动态Web站点服务及其应用开发环境。LNMP是一个缩写词,具体包括Linux操作系统、nginx网站服务器、MySQL数据库服务…

2023年中国熔盐储能装机量、新增装机量及行业投资规模分析[图]

熔盐储能是一种可以传递能量、长时间(6-8h)、大容量储能的技术路径,作为传热介质可以实现太阳能到热能的转换,作为储能介质可以实现将热能和电能的双向转换,可以很好的适应和解决以上两大矛盾。因此,熔盐储…

基于SVM+Webdriver的智能NBA常规赛与季后赛结果预测系统——机器学习算法应用(含python、ipynb工程源码)+所有数据集(一)

目录 前言总体设计系统整体结构图系统流程图 运行环境Python环境Jupyter Notebook环境PyCharm环境MATLAB环境 模块实现1. 数据预处理1)常规赛数据处理2)季后赛数据处理 相关其它博客工程源代码下载其它资料下载 前言 本项目使用了从NBA官方网站获得的数…

ssh 去掉登陆提示

一、ssh链接服务器提示 The authenticity of host cant be established. ECDSA key fingerprint is SHA256:. Are you sure you want to continue connecting (yes/no/[fingerprint])?二、永久解决 | 屏蔽提示 1、打开文件 sudo vi /etc/ssh/ssh_config 2、修改文件内容 …

[Java]0.1+0.2不等于0.3 !!一分钱问题与解决方案

一、原因 原因很简单,计算机存储和计算数组都是用二进制, 而大部分小数转二进制的时候,就丢失精度了。 0.1、0.2、0.3这些小数在二进制里都是循环小数,计算机不可能存储无限循环小数,所以只能截取一部分,导…

中文连续视觉语音识别挑战赛

视觉语音识别,也称唇语识别,是一项通过口唇动作来推断发音内容的技术。该技术在公共安全、助老助残、视频验真等领域具有重要应用。当前,唇语识别的研究方兴未艾,虽然在独立词、短语等识别上取得了长足进展,但在大词表…

从创业者的角度告诉你AI问答机器人网页的重要性

在数字化时代,创业者面临着越来越多的挑战。而AI问答机器人网页正成为创业者们的必备工具。它可以提供即时客户支持、降低运营成本,并实现全天候服务。接下来,我将从创业者的角度阐述一下,AI问答机器人网页为什么那么重要&#xf…

快速自动化处理JavaScript渲染页面的方法

目录 一、使用无头浏览器 二、使用JavaScript渲染引擎 三、使用前端框架工具 随着互联网技术的不断发展,JavaScript已经成为Web开发中不可或缺的一部分。然而,在自动化处理JavaScript渲染页面方面,却常常让开发者感到头疼。本文将介绍一些快…

Nessus已激活,New Scan按钮不可点击

刷新后会给出下面的提示 Plugins are compiling. Nessus will be limited until compilation is complete. 因为插件编译中,所以扫描功能被禁用了。 查看编辑进度,鼠标放到两个循环箭头上即可查看。

6.4 图的存储结构

思维导图: 前言: --- **6.4 图的存储结构** - **核心问题**:由于图的结构复杂性,我们不能仅仅依赖于元素在存储区的物理位置来表示它们之间的关系。 - **邻接矩阵**: - **基本思路**:虽然图没有顺序存…

Junit 单元测试之错误和异常处理

错误和异常处理是测试中非常重要的部分。假设我们有一个服务,该服务从数据库中获取用户。现在,我们要考虑的错误场景是:数据库连接断开。 整体代码示例 首先,为了简化,我们让服务层就是简单的类,然后使用I…

[Machine Learning][Part 6]Cost Function代价函数和梯度正则化

目录 拟合 欠拟合 过拟合 正确的拟合 解决过拟合的方法:正则化 线性回归模型和逻辑回归模型都存在欠拟合和过拟合的情况。 拟合 来自百度的解释: 数据拟合又称曲线拟合,俗称拉曲线,是一种把现有数据透过数学方法来代入一条…