我有以下字符串:List = [[1],['apple',2],[3],[4],[5],[6],[7]]
如何提取以下子列表:s1 = [1] s2 = ['apple',2] ... s7 = [7]?
谢谢您的帮助。
如果要创建s1
通过命名的7个变量s7
,最直接的方法是直接赋值。
s1 = List[0]
S2 = List[1]
...
S7 = List[6]
第二种方法是将所有分配放在一行上,然后让python解包列表,如@Lafada所述。
第三种方法是使用exec
,它对于更多数量的变量可能更具可伸缩性,尽管我不清楚所有这些单独名称的值,而不是原始列表的值。
L = [[1], ['apple', 2], [3], [4], [5], [6], [7]]
for i in xrange(7):
exec("s%d = L[%d]" % ((i+1), i))
更新:根据OP的评论,他以字符串开头。在我们首先使用将字符串转换为列表之后,可以使用上述每种方法ast.literal_eval
。
import ast
List = "[[1], ['apple', 2], [3], [4], [5], [6], [7]]"
L = ast.literal_eval(List)
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句