from collections import Iterable
# python 切片 在一个数组中取前N个元素
L=[1,2,3,4,5]
M=[]
for i in range(3):
M.append(L[i])
print(M)
# 简单的方法 ;
print(L[1:3])
# #迭代不仅有下标的 list tuple 可以迭代,dict 也可以迭代
# 遍历 dict
dict = {'a': 1, 'b': 2, 'c': 3}
for key in dict:
print(key)
# 答案 b,a,c , NOTE:因为dict 不是顺序存储的,所以迭代出来的结果不是顺序的,默认 dict 迭代出来是key.
for val in dict.values():
print(val)
# 答案 3,2,1 ,如果要迭代key,和 val
for key,val in dict.items():
print(key, val)
# 不用管是哪个对象,可以判断是否是可迭代的对象
isinstance(dict, Iterable)
# list 实现JAVA的下标循环 ,enumerate
for i, value in enumerate(L):
print(i, value)
for x, y in ([(1, 1), (2, 2)]):
print(x, y)
# 练习,查找出一个list 中的最大值和最小值,并且返回一个tuple.
L = [1, 2, 3, 4, 5]
def find_min_and_max(L):
y = L[0]
z = L[0]
for x in L:
if x < y:
y = x
if x > z:
z = x
return (y, z)
t=find_min_and_max(L)
print(t)