Python 可迭代对象 iterable的具体使用
作者:小菠萝测试笔记 发布时间:2021-08-28 08:24:32
标签:Python,可迭代对象,iterable
目录
前置知识
可迭代对象
如何判断一个对象是否是可迭代对象?
enumerate 函数
多嵌套列表
总结
前置知识
如果给定一个 list 或 tuple,我们可以通过 for 循环来遍历这个 list 或 tuple,这种遍历我们称为迭代(Iteration)
在 Python 中,迭代是通过 for ... in 来完成的
lists = [1, 2, 3, 4, 5]
for i in lists:
print(i)
可迭代对象
for 循环不仅可以用在 list 或 tuple 上,还可以用在其他可迭代对象上
list 这种数据类型虽然有下标,但很多其他数据类型是没有下标的,但是只要是可迭代对象,无论有无下标,都可以迭代
dicts = {
"a": 1,
"b": 2
}
for i in dicts:
print(i)
# 输出结果
a
b
如何判断一个对象是否是可迭代对象?
from collections import Iterable
lists = [1, 2, 3, 4, 5]
dicts = {
"a": 1,
"b": 2
}
print(isinstance(lists, Iterable))
print(isinstance(dicts, Iterable))
print(isinstance({"test"}, Iterable))
print(isinstance(1234, Iterable))
# 输出结果
True
True
True
False
enumerate 函数
循环列表的话,默认是只返回元素值,如果想同时拿到元素值和对应的下标值呢?
enumerate 函数可以把 list 变成一个 索引-元素对的迭代对象,然后循环遍历这个对象即可
lists = [1, 2, 3, 4, 5]
# 看看是不是迭代对象
print(isinstance(enumerate(lists), Iterable))
# 循环
for ind, val in enumerate(lists):
print(ind, val)
# 输出结果
True
0 1
1 2
2 3
3 4
4 5
多嵌套列表
for x, y in [(1, 1), (2, 4), (3, 9)]:
print(x, y)
# 输出结果
1 1
2 4
3 9
总结
任何可迭代对象都可以作用于 for 循环,包括我们自定义的数据类型,只要符合迭代条件,就可以使用 for 循环
来源:https://www.cnblogs.com/poloyy/p/14658433.html


猜你喜欢
- 要了解JavaScript对象,我们可以从对象创建、属性操作、对象方法这几个方面入手。概括起来,包括以下几模块: 1.
- 一、文件基本的操作1、open() 打开文件open() 方法用于打开一个文件,并返回File文件对象,在对文件进行处理过程都需要使用到这个
- 百度指数抓取,再用图像识别得到指数前言:土福曾说,百度指数很难抓,在淘宝上面是20块1个关键字:哥那么叼的人怎么会被他吓到,于是乎花了零零碎
- 在推行系统中,时不时会有用户提出希望系统能自动推送邮件,由于手头的工具和能力有限,不少需求都借助于sql server的邮件触发来实现。步骤
- FLASH 全屏有二类四种:1、不用浏览器直接用FLASH播放器播放的类型:A、不显示FLASH播放器菜单栏的全屏(类似屏保效果),在第一帧
- 前记在Python中, Dict是一系列由键和值配对组成的元素的集合, 它是一个可变容器模型,可以存储任意类型对象. Dict的存取速度非常
- 有时候想同时(同级)展示多个视图,而不是嵌套展示,例如创建一个布局,有 sidebar(侧导航) 和 main(主内容) 两个视图,这个时候
- 我搜集了国内10几个电影网站的数据,里面近几十W条记录,用文本没法存,mongodb学习成本非常低,安装、下载、运行起来不会花你5分钟时间。
- 假设通过爬虫你获取到了北京2016年3,10月份每天白天的最高气温(分别位于列表a,b),那么此时如何寻找出气温随时间(天)变化的某种规律?
- 求和try: while True: n=input() s=1 for x in raw_input(
- 运行效果实现代码# -*- coding: utf-8 -*-import tkinter as tkinterimport tkinter
- 前言我们平时的工作中可能需要和服务端建立链接,从而来接受服务端推送的数据,常用的就是eventSource,我们平时常用的就是通过get的方
- 本文实例讲述了Python使用add_subplot与subplot画子图操作。分享给大家供大家参考,具体如下:子图:就是在一张figure
- 守来说,AJAX在现在是热得不能再热的技术。没有人能否认,它拥有大批的支持者。在CNN上,它从二月份的一个不被看好的词语到十月份成长成一个初
- 一、简介Paramiko模块是基于Python实现的SSH远程安全连接,用于SSH远程执行命令、文件传输等功能。安装模块默认Python没有
- 理想高通滤波实现 python opencvimport numpy as np import cv2 from matplotlib im
- 换用非默认浏览器时需要输入密码或token查询方法:在XX:\AnacondaXX\Scripts下 运行jupyter-notebook.
- 【OpenCV】⚠️高手勿入! 半小时学会基本操作⚠️图像处理概述OpenCV 是一个跨平台的计算机视觉库, 支持多语言, 功能强大. 今天
- 单例模式概念单例模式:“保证一个类仅有一个实例,并提供一个访问它的在这里插入代码片全局访问点。单例模式会阻止其他对象实例化其自己的单例对象的
- SOAP.py 客户机和服务器SOAP.py 包含的是一些基本的东西。没有 Web 服务描述语言(Web Services Descript