将嵌套字符串列表转换为嵌套字符串列表

时间:2015-11-06 21:20:48

标签: python string list

我想知道如何使用字符串操作(如.split(),. strip()和.replace())将嵌套字符串列表转换为嵌套字符串列表。一个样本将转换一个序列(注意带双引号的单引号):

['"Chipotle"', '"Pho"']

成像:

[["Chipotle"], ["Pho"]]

1 个答案:

答案 0 :(得分:2)

如果您的嵌套字符串采用“A”,“B”,“C”形式,则可以使用以下内容:

s.split('"')[1::2]  split by double quote, only odd indices (i.e. between quotes) 

如果你想要一个嵌套列表,你可以在列表推导中使用这个表达式,如下所示:

[s.split('"')[1::2] for s in thelist]

其中thelist是原始列表。

为什么只有奇数指数?它来自字符串的结构:

split()结果的第0个元素将是第一个引用之前的字符串的一部分; 1号 - 在第1和第2报价之间; 第二 - 第二和第三之间,依此类推。

我们只需要奇数(开盘)和偶数(收盘)报价之间的字符串。

示例:

t = ['"1","2","3","4"', '"5","6","7',"8"']
a = [s.split('"')[1::2] for s in t]
print(a)

打印

[['1','2','3','4'],['5','6','7','8']]