python中enumerate、变量类型转换

enumerate可以在遍历过程中自动生成新的一列并从0开始计数

1 a = ["hello", "world", "dlrb"]
2 for key, b in enumerate(a, 1):
3     print key, b

我们定义了一个集合a,我们现在想要输出集合a中的每一个元素并且从数字1开始编号,输出结果:

1 hello
2 world
3 dlrb

上面的代码中我们定义了一个变量key,enumerate(a, 1)的意思是在enumerate过程中将每一个元素的编号赋值给变量key,最后print变量key和b输出结果

下面我们要让用户体验好一点,让用户输入编号查看对应元素:

1 a = ["hello", "world", "dlrb"]
2 for key, b in enumerate(a, 1):
3     pass
4 li = raw_input("Number:")
5 li_int = int(li)
6 print a[li_int - 1]

输出结果:

Number:1
hello

Number:2
world

Number:3
dlrb

代码中我们使用了Int(),作用是将类型转换成int类型,因为用户即时输入了数字1但是python会默认将1认为是str类型,所以这里我们需要手动转换成int类型

最后的 a[li_int - 1]是因为我们打印的序列是从1开始的,但是系统默认是从0开始,所以我们只需要将序号减1就ok了

原文地址:https://www.cnblogs.com/zhangzengqiang/p/7486854.html