我有一个字典作为输出。这些值是混乱的。它们采用字符串/列表的形式。我需要从中删除方括号和引号,以便可以在CSV文件中正确打印它们。我该如何实现?
这是字典:
{'table':[['abc']],'from':[['abc']],'where_expr':['c','=','book']}
我希望它变成这样: {'table':abc,'from':abc,'where_expr':c,=,book} 和我的csv文件为
表|来自| where_expr
abc | abc | c =图书
(我只是使用|显示不同的列)
dict1=delr.asDict()
with open('delf.csv', 'w') as f: x
w = csv.DictWriter(f, dict1.keys())
w.writeheader()
w.writerow(dict1)
答案 0 :(得分:2)
您可以使用以下dictcomp:
{k: str(v).strip("[]").replace("'", "") for k, v in dct.items()}
# {'table': 'abc', 'from': 'abc', 'where_expr': 'c, =, book'}
答案 1 :(得分:1)
那为什么不呢?
print({k: (', '.join(v[0]) if isinstance(v[0], list) else ', '.join(v)) for k,v in d.items()})
输出:
{'table': 'abc', 'from': 'abc', 'where_expr': 'c, =, book'}