Python 一个列表中的两个列表,带 Tab

标签 python python-3.x list split python-2.x

我有一个列表:

data = ['Other stuff',186.797\t-48',
 '187.272\t-48',
 '187.747\t-48',
 '188.222\t-45',
 '188.697\t-43',
 '189.172\t6',
 '189.646\t-23',
 '190.121\t12',...]

如何创建两个列表,一个在“/t”之前有值,另一个在“/t”之后有值。

但是,我只想从 data[1] 到 len(data) 跳过第一个值,因为它只是描述性文本。

例如:

L1 = [186.797,...,190.121]
L2 = [-48,..., 12]

最佳答案

您可以使用正则表达式:

import re
s = ['186.797\t-48',
 '187.272\t-48',
 '187.747\t-48',
 '188.222\t-45',
 '188.697\t-43',
 '189.172\t6',
 '189.646\t-23',
 '190.121\t12']

L1, L2 = map(list, zip(*[[float(re.findall('[\d\.]+', i)[0]), int(re.findall('[\-\d]+$', i)[0])] for i in s]))

输出:

[186.797, 187.272, 187.747, 188.222, 188.697, 189.172, 189.646, 190.121]
[-48, -48, -48, -45, -43, 6, -23, 12]

关于Python 一个列表中的两个列表,带 Tab,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49020187/

相关文章:

python - 有没有办法只在函数创建时定义字典?

python-requests - 通过带有方括号名称的 POST 表单发送不起作用

python - 试图展示值得提及的角色的问题

Python 打印列表问题

python - 将列表和字符串的列表制作成平面列表

c# - 从 List<string[]> 到 String[,]

python - 处理大小为 10**6 的列表的时间复杂度

python - 使用Python进行归并排序的一个bug

python - 如何在 Python 的同一模块目录中导入其他函数?

python - 根据一组特定的规则对每个花样中打出的牌进行排序