Python代码阅读合集介绍:为什么不建议Python初学者直接看项目源码本文阅读的代码实现了非-list形式输入成列表形式。本文阅读的代码片段来自30-seconds-of-python。cast_listdefcast_list(val):returnlist(val)ifisinstance(val,(tuple,list,set,dict))else[val]#EXAMPLEScast_list('foo')#['foo']cast_list([1])#[1]cast_list(('foo','bar'))#['foo','bar']cast_list函数输入一个参数,将参数转换成列表输出。函数使用isinstance()检查给定值是否可枚举,并使用list()转换参数形式,或者直接封装成列表返回。原始代码片段中没有set和dict类型的示例。接下来,让我们测试一下这两种输入的输出。>>>cast_list({'one','two','three'})['three','one','two']>>>cast_list({"one":1,"two":2,"three":3})['one','two','three']集合类型的输出元素顺序不一致,因为集合是无序的。在字典类型中,最后一个列表中只有键,没有值。
