如何解决将字符串输出解析为python数据结构
partition_ = partition(population)
这个输出:
"[{'3','4'},{'1','2','5','6','7','8','9'}]"
B = nx_comm.modularity(F1,[{'3','9'}])
但是因为它是一个字符串,所以模块化函数不接受它,因为我猜是引号。 任何人都可以请帮助告诉我我该如何解决这个问题?
提前致谢。
解决方法
您需要的是将输出字符串解析为您想要的格式的函数。这是我制作的一个简单的解析器,它可以创建您需要的输出。让我知道它是否有效。
partition_ = "[{'3','4'},{'1','2','5','6','7','8','9'}]"
def custom_parser(string):
list_of_sets = []
temp = []
begin_set = False
for char in string:
if begin_set:
if char == '}':
begin_set = False
temp2 = set(temp)
list_of_sets.append(temp2)
temp = []
elif char not in ['\'',',' ']:
temp.append(char)
if char == '{':
begin_set = True
return list_of_sets
new_partition_ = custom_parser(partition_)
,
试试这个
B = nx_comm.modularity(F1,[int(j) for i in partition_ for j in i ])
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。