Python基础学习05(切片与迭代)

切片与迭代

以上两个操作,针对列表以及元组
ppt看完7,看到8了

切片(slice)

取list或tuple中部分元素

未使用切片示例(取前三个元素)

>>>L=['a','d','f','3','4']
>>>r=[]
>>>n=3
>>>for i in range(n):
			r.append(L[i])
>>>r
['a','d','f']

切片举例

>>>L[0:3]
['a','d','f']
>>>L[:3]		第一个索引为0可省略
>>>L[1:3]		取第2、3个两个元素
>>>L[-2:-1]	    取倒数第二个元素
>>>L[-2:]		取最后两个元素
>>>L[-1:]		取最后一个元素
>>>L[1:1]		取一个[]

最后一个元素索引为 -1
左边的索引的元素一定去得到,
右边的索引元素一定取不到
E.g

>>>L = list(range(n))
>>>L[:10:2]		前十个数每两个取一个
>>>L[::5]		所有数每五个取一个
>>>L[::]		复制一个list	?
从第一个元素开始取

>>>L[::-1]						生成倒序列表!

字符串、元组 同理,操作完,类型不变。

迭代(iteration)

主要使用 for 循环

E.g
dict:
>>>q={'a':1,'b':2,'c',3}
>>>for key in q:			迭代key
		print(key)
>>>for value in q.values()  迭代key的值
>>>for k,v in q.items()		两者都

E.g:
>>>for x in q.items()			会返回一个元组(1对2)

str:
>>>for i in 'ASDFGHJKL':
		print(i)

判断可迭代对象
使用 collections 模块的 Iterable 类型

>>>from collections import Iterable
>>>isinstance('abc',Iterable)	判断str
>>>True
>>>isinstance([1,2,3],Iterable)	判断list
>>>isinstance(123,Iterable)	    判断int

实现下标循环(enumerate函数)

>>>for i,k in enumerate(['a','b',c']):
		print(i,k)

一般情况,引用多变量

>>>for x,y in [(1,2),(3,4),(5,6)]:
		print(x,y)

猜你喜欢

转载自blog.csdn.net/weixin_43420243/article/details/86682698
今日推荐