python - 更多 pythonic 方法来做到这一点(字符串拆分)?

标签 python

<分区>

d 是一个字符串列表,其中每个项目由两部分组成(由点连接)。我想提取每个字符串项的点前后的部分。

这是我的做法。

d = ['a1.b1', 'a2.b2', 'a3.b3']
b = [c.split('.')[0] for c in d]
a = [c.split('.')[1] for c in d]

但我想还有更多 pythonic 方式?

最佳答案

你可以使用zip()函数:

>>> a,b = zip(*[i.split('.') for i in d])
>>> a
('a1', 'a2', 'a3')
>>> b
('b1', 'b2', 'b3')

关于python - 更多 pythonic 方法来做到这一点(字符串拆分)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33658773/

相关文章:

python - 导入错误 : cannot import name discovery

python - 如何将 itertools.chain 转换为 numpy 数组?

python - 从python中的多值字典中删除特定值

python - Matplotlib:刻度标签与字体设置不一致(LaTeX 文本示例)

python - 如何修复 'translate() got an unexpected keyword argument ' 格式''

Python:如何找出列表中是否存在未知元素?

python - 如何处理 PyYaml 中的标签/类向后兼容性?

python - 如何在python中获取前N个值

python - tensor.numpy() 在 tensorflow.data.Dataset 中不起作用。抛出错误 : AttributeError: 'Tensor' object has no attribute 'numpy'

python - python coverage可以分层显示结果吗?