name =["苏","南","大","叔"]for x in name:print(x)# 苏# for k,v in name: # ValueError: not enough values to unpack (expected 2, got 1)# print(k,v)for x inenumerate(name):print(x,type(x))# (0, '苏') <class 'tuple'>for k,v inenumerate(name):print(k,v)# 0 苏
Python
当然,在实际操作中,不同的数据类型的访问方式也存在着较大差异,具体可以参考文末代码。
方案一:普通的for...in
普通的for in能遍历出每个数据成员,但是不能遍历出索引值。
name =["苏","南","大","叔"]for x in name:print(x)# 苏
Python
为了遍历出索引值,可以定义一个普通的类似i++的数字类型,来代替这个索引。
name =["苏","南","大","叔"]
i =0for x in name:print(i,x)# 0,苏
i = i+1# i++ 报错
Python
如果试图像其它编程语言里面一样,写for k,v in的话,就会得到下的类似错误提示信息:
for k,v in name:# ValueError: not enough values to unpack (expected 2, got 1)print(k,v)
Python
输出:
Traceback (most recent call last):
File "C:\Users\sunan\Desktop\test\py\t.py", line 21, in<module>for k,v in name:
^^^
ValueError: not enough values to unpack (expected 2, got 1)