考虑报价的字符串拆分

2024-10-06 12:31:13 发布

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

想象一下这个字符串:

"a","b","hi, this is Mboyle"

我想用逗号分开,除非逗号在两个引号之间: i、 电子邮件:

["a","b","hi, this is Mboyle"]

我如何做到这一点?使用split,“嗨,这是Mboyle”也会被拆分!你知道吗


Tags: 字符串is电子邮件hithis引号split逗号
3条回答

您可以通过","而不是逗号拆分字符串:

In [1]: '"a","b","hi, this is Mboyle"'.strip('"').split('","')
Out[1]: ['a', 'b', 'hi, this is Mboyle']

我对这个问题的看法(小心使用!)你知道吗

s = '"a","b","hi, this is Mboyle"'
new_s = eval(f'[{s}]')
print(new_s)

输出:

['a', 'b', 'hi, this is Mboyle']

编辑(更安全的版本):

import ast.literal_eval
s = '"a","b","hi, this is Mboyle"'
new_s = ast.literal_eval(f'[{s}]')

解决了。你知道吗

with gzip.open(file, 'rt') as handler:
    for row in csv.reader(handler, delimiter=","):

这就是窍门!谢谢大家

相关问题 更多 >