前面介绍列表的时候我们知道列表可以按位置存放多个任以类型的值。
比如我定义一个列表。
msg=['于谦',55,1.75]
这都是前面学过的,按照前面学整型和字符串类型的经验来看,我们要知道定义列表这行代码,背后具体是调用了什么功能来造这个列表的,就可以直接打印下这个msg的类型。
msg=['于谦',55,1.75]
print(type(msg))
打印出来type是list类型,所以我们就知道了,定义msg这个列表背后是调用了list加括号这个功能。
list加括号这个功能,除了可以造列表之外,同样也一定可以做类型转换,把其他类型转换成列表类型。那么它到底可以把哪些类型转换成列表类型呢?
只要是可迭代对象,list这个功能都可以把它转成列表类型,注意可迭代对象这个词已经是第二次出现了,前面我们讲for循环的时候也出现过一次。
当时我们说for循环可以遍历的对象一定是可迭代对象,既然可迭代对象可以被for循环遍历,那同理只要是可以被for循环遍历的类型都可以被list这个功能转成列表。
那能被for循环循环的类型,我们学过哪些?首先是字符串可以的吧。比如我写个‘hello’。
print(list('hello'))
就打印成了列表,把每个字母村成了这个列表的一个元素。那它是怎么做到的呢?底层暂时就可以理解为它用这个字符串做了有个for循环,每循环一次就取出一个字符,放在这个列表里面。
然后除了字符串可以被lkist转成列表,当然列表本身就不用说了。除了列表,字典是不是也可以被转成列表。
print(list({'李白': '刺客','王昭君': '法师','曹擦': '战士', '孙尚香': '射手'}))
刚刚我们说了,就把它当成for循环,循环这个字典把取出来的值放在新的列表里面,所以打印出来的列表结果一定就是李白、王昭君、曹操、孙尚香。因为前面我们讲for循环的时候就知道了,for循环循环地点取出来的值是key,而不是value。
我们来运行看看。结果打印出来的就是key。
未经允许不得转载:445IT之家 » Python 列表详解1