Python之切片、迭代
1 #迭代 2 d = {'s':1,'b':2,'c':3}; 3 #默认情况下,迭代的对象是key,如果要迭代value,用for value in d.values(),如果要同时迭代key 和 value ,可以用for k,v in d.items() 4 print("迭代key") 5 for key in d: 6 print(key) 7 8 print("迭代value") 9 for value in d.values(): 10 print(value) 11 12 print("迭代key 和 value") 13 for k,v in d.items(): 14 print(k,v) 15 16 ###迭代字符窜 17 print("迭代字符串") 18 for ch in 'ABC': 19 print(ch) 20 21 ######如何判断对象是否可迭代######## 22 from collections import Iterable 23 abc = isinstance('abc',Iterable) 24 print("str 是否可迭代:") 25 print(abc) 26 27 my_list = isinstance([1,2,3],Iterable) 28 print("list 是否可迭代:") 29 print(my_list) 30 31 my_123 = isinstance(123,Iterable) 32 print("整数是否可迭代:") 33 print(my_123) 34 35 ########利用 enumerate 函数将list 变成索引-元素对,实现下标循环###### 36 print("利用enumerate 实现索引和元素的同时迭代:") 37 for i,value in enumerate(['A','B','C']): 38 print(i,value) 39 40 print("Python 中 for 循环中同时用两个变量:") 41 for x,y in [(1,1),(2,4),(3,9)]: 42 print(x,y) 43 44 def findMinAndMax(L): 45 #print(len(L)) 46 if len(L)<=0: 47 return (None,None) 48 else: 49 Min = L[0] 50 Max = L[0] 51 for value in L[1:]: 52 if value < Min: 53 Min = value 54 if value > Max: 55 Max = value 56 return(Min,Max) 57 58 # 测试 59 if findMinAndMax([]) != (None, None): 60 print('测试失败!') 61 elif findMinAndMax([7]) != (7, 7): 62 print('测试失败!') 63 elif findMinAndMax([7, 1]) != (1, 7): 64 print('测试失败!') 65 elif findMinAndMax([7, 1, 3, 9, 5]) != (1, 9): 66 print('测试失败!') 67 else: 68 print('测试成功!')