comp = "{1},{2},{3},{1,2},{2,3}"
我希望上面的字符串被分配到2个不同的集合。S0_list = [{1},{2},{3}] and S1_list = {1,2},{2,3}.
代码基本上必须遍历上面字符串(comp)中的每个字符,并将单个元素({1},{2}
)放在S0中,将双元素({1,2},{2,3}
)放在S1中。
这是我目前掌握的密码。你知道吗
S0_list = []
S1_list = []
new_set = set()
comp = "{1},{2},{3},{1,2},{2,3}"
pos = 0
S0_list = S1_list = [0]
while pos < len(comp):
if comp[pos] == '{':
pos = pos + 1
count = 1
while comp[pos] != '}':
pos = pos + 1
if comp[pos] == ',':
count = count + 1
if count == 1:
S0_list.append(new_set)
elif count == 2:
S1_list.append(new_set)
pos=pos+1
有人能帮我一下吗?我的问题格式不好。你知道吗
另一种选择:
输出:
一点解释我们使用list comprehension迭代字符串并split它,然后我计算字符串中的
,
个数,用这个数我们可以得到正确的集合对象(根据它的名称)来使用getattar更新在这里,您可以设置更多的大小以获得不同的元素,例如,让我们添加一个3位数的选项:
输出:
您可以尝试这样做,找到
{}
中的组,用逗号分隔它们并检查其长度注意,
comp
中的语法基本上已经是有效的Python了,所以我们可以eval()
它(假设它不是来自用户的不可信输入!)地址:相关问题 更多 >
编程相关推荐