为python列表的字符串添加逗号(不起作用,不重复)

2024-04-18 10:50:02 发布

您现在位置:Python中文网/ 问答频道 /正文

假设我有一个字符串列表,如下所示:

[["['item1','item2', 'item3']['item4', 'item5', 'item6']['item7','item8','item9']"]]

我如何用逗号分隔这些小列表?你知道吗

我想最终分离出一个巨大的文本文件,这个文件包含如下列表,通过基于一个值对它们进行排序,我想尝试这样做:

with open("sample.txt", "rU") as f:
    lines = [line for line in f.readlines()]

for group, items in itertools.groupby(lines[1:], lambda x: round(float(x.split()[-24]))):
    with open('group_%s' % group, 'w') as o:
        o.writelines(items)

但除非有逗号分隔嵌套列表,否则这是行不通的,我尝试了以下方法:

f = ",".join([str(x) for x in f])

Tags: 字符串in列表foraswithlinegroup
1条回答
网友
1楼 · 发布于 2024-04-18 10:50:02

假设你的意思是你有这个字符串。。。你知道吗

s = "['item1','item2', 'item3']['item4', 'item5', 'item6']['item7','item8','item9']"

然后你可以使用re模块

import re

list_of_lists = []

ls = re.findall(r"\[.*?\]",s)
for l in ls:
    print l
    list_of_lists.append(eval(l))

"""
 -Outputs -
['item1','item2', 'item3']
['item4', 'item5', 'item6']
['item7','item8','item9']
"""

然后可以将字符串求值到一个列表中。。。你知道吗

相关问题 更多 >