如何将此字符串转换为列表列表?
问题描述
如果用户输入 [[0,0,0], [0,0,1], [1,1,0]]
并回车,程序应该将此字符串转换为多个列表;一个列表保存 [0][0][0]
,另一个保存 [0][0][1]
,最后一个列表保存 [1][1][0]
If a user types in [[0,0,0], [0,0,1], [1,1,0]]
and press enter,
the program should convert this string to several lists;
one list holding [0][0][0]
, other for [0][0][1]
, and the last list for [1][1][0]
python有没有好的方法来处理这个问题?
Does python have a good way to handle this?
解决方案
这比 Satoru 的灵活一点,并且不使用任何库.不过,它不适用于更深的嵌套列表.为此,我认为您需要一个递归函数(或循环)或 eval.
This is a little more flexible than Satoru's, and doesn't use any libraries. Still, it won't work with more deeply nested lists. For that, I think you would need a recursive function (or loop), or eval.
str = "[[0,0,0],[0,0,1],[1,1,0]]"
strs = str.replace('[','').split('],')
lists = [map(int, s.replace(']','').split(',')) for s in strs]
lists 现在包含您想要的列表列表.
lists now contains the list of lists you want.
相关文章