Python---迭代

# 迭代
# 如果给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历我们称为迭代(Iteration)
# 在Python中,迭代是通过for ... in来完成的,而很多语言比如C或者Java,迭代list是通过下标完成的
# Python的for循环抽象程度高,因为python的for循环不仅可以用在list或tuple上,还可以作用在其他可迭代对象上

# 迭代dict
# 因为dict的存储不是按照list的方式顺序排列,所以,迭代出的结果顺序很可能不一样
# 默认情况下,dict迭代的是key
# 如果要迭代value,可以用for value in d.values()
# 如果要同时迭代key和value,可以用for k, v in d.items()

# 通过collection模块的Iterable类型判断一个对象是可迭代对象
from collections import Iterable

d = {‘a‘: 1, ‘b‘: 2, ‘c‘: 3}

print(‘迭代key‘)
for key in d:
    print(key)

print(‘迭代value‘)
for value in d.values():
    print(value)

print(‘迭代key&value‘)
for k, v in d.items():
    print(k, v)

# 迭代字符串
print(‘迭代字符串‘)
for ch in ‘ABC‘:
    print(ch)

# str是否可迭代
print(isinstance(‘abc‘, Iterable))
# list是否可迭代
print(isinstance([1, 2, 3], Iterable))
# 整数是否可迭代
print(isinstance(123, Iterable))

# 使用Python内置的enumerate函数把一个list变成索引-元素对,可以在for循环中同时迭代索引和元素本身
for i, value in enumerate([‘A‘, ‘B‘, ‘C‘]):
    print(i, value)
时间: 2024-11-09 18:21:13

Python---迭代的相关文章

Python迭代dict的value转载http://www.imooc.com/learn/177

我们已经了解了dict对象本身就是可迭代对象,用 for 循环直接迭代 dict,可以每次拿到dict的一个key. 如果我们希望迭代 dict 对象的value,应该怎么做? dict 对象有一个 values() 方法,这个方法把dict转换成一个包含所有value的list,这样,我们迭代的就是 dict的每一个 value: d = { 'Adam': 95, 'Lisa': 85, 'Bart': 59 } print d.values() # [85, 95, 59] for v i

Python 迭代对象、迭代器、生成器详解

在了解Python的数据结构时,容器(container).可迭代对象(iterable).迭代器(iterator).生成器(generator).列表/集合/字典推导式(list,set,dict comprehension)众多概念参杂在一起,难免让初学者一头雾水,本文将一一为大家进行介绍,希望对大家学习python有所帮助. 容器(container) 容器是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用 in ,  not in 关键字判断元素是否包含在容器

完全理解Python迭代对象、迭代器、生成器

在了解Python的数据结构时,容器(container).可迭代对象(iterable).迭代器(iterator).生成器(generator).列表/集合/字典推导式(list,set,dict comprehension)众多概念参杂在一起,难免让初学者一头雾水,我将用一篇文章试图将这些概念以及它们之间的关系捋清楚. 容器(container) 容器是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in关键字判断元素是否包含在容器中.通常这类数据

Python高级特性:Python迭代、生成器、列表生成式

迭代 给定一个list或tuple,我们可以通过for循环来遍历这个list或tuple,这种遍历称为迭代(Iteration). 在java和C语言中,迭代是通过循环list的下标来完成的,Python中迭代的抽象程度更高,不仅可以迭代list和tuple,而且可以迭代任何可迭代对象,包括我们自己创建的数据类型,只要符合迭代条件,无论有无下标,都可以使用for循环. Python中的迭代是通过for -in -来完成的. 字典的迭代 比如字典就是可以迭代的: 1 >>> d = {'a

Python 迭代删除重复项,集合删除重复项

1. 迭代删除重复项:先排序列表项,然后通过新迭代(not in)去除重复项,分片打印 def sanitize(time_string): if '-' in time_string: splitter = '-' elif ':' in time_string: splitter = ':' else: return (time_string) (mins, secs)=time_string.split(splitter) return(mins + '.' + secs) with op

Python迭代和列表生成器

使用for循环遍历list和tuple,这种遍历成为迭代 在如C语言中都是通过下标拿到值,for...in这种方式其实是相同的. 在函数的一节,这样说--->'求和函数sum(),sum(iterable,start),第一个参数必须是可以迭代对象,listtuple.'  可迭代对象为list,tuple 所以使用for遍历时,对象是要可以迭代的. 如何判断一个对象能不能迭代? Python的collections模块的Iterable可以判断是否可以迭代;   isinstance()函数用

[转载]完全理解Python迭代对象、迭代器、生成器

译文地址:liuzhijun 在了解Python的数据结构时,容器(container).可迭代对象(iterable).迭代器(iterator).生成器(generator).列表/集合/字典推导式(list,set,dict comprehension)众多概念参杂在一起,难免让初学者一头雾水,我将用一篇文章试图将这些概念以及它们之间的关系捋清楚. 容器(container) 容器是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in关键字判断元素

Python 迭代dict的value

迭代dict的value 1:values() 2:itervalues()  3:for key in Di:     print (Di[key]) 我们已经了解了dict对象本身就是可迭代对象,用 for 循环直接迭代 dict,可以每次拿到dict的一个key. 如果我们希望迭代 dict 对象的value,应该怎么做? dict 对象有一个 values() 方法,这个方法把dict转换成一个包含所有value的list,这样,我们迭代的就是 dict的每一个 value: d = {

Python迭代对象、迭代器、生成器

在了解Python的数据结构时,容器(container).可迭代对象(iterable).迭代器(iterator).生成器(generator).列表/集合/字典推导式(list,set,dict comprehension)众多概念参杂在一起,难免让初学者一头雾水,我将用一篇文章试图将这些概念以及它们之间的关系捋清楚. 容器(container) 容器是一种把多个元素组织在一起的数据结构,容器中的元素可以逐个地迭代获取,可以用in, not in关键字判断元素是否包含在容器中.通常这类数据

Python迭代

你竟任着刚硬不悔改的心,为自己积蓄忿怒,以致神震怒,显他公义审判的日子来到.他必照各人的行为报应各人.凡恒心行善,寻求荣耀.尊贵和不能朽坏之福的,就以永生报应他们:惟有结党不顺从真理,反顺从不义的,就以忿怒.恼恨报应他们.(ROMANS 2:7-8) 迭代 跟一些比较牛X的程序员交流,经常听到他们嘴里冒出一个不标准的英文单词,而loop.iterate.traversal和recursion如果不在其内,总觉得他还不够牛X.当让,真正牛X的绝对不会这么说的,他们只是说"循环.迭代.遍历.递归&q