You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用列表推导式提取列表中字符串指定位置字符生成新列表

提取列表中字符串指定位置字符生成新列表的解决方案

嘿,你找对方向啦!列表推导式完全能搞定这个需求,核心就是利用Python字符串的索引特性——字符串的索引从0开始,所以第1位对应索引0,第2位是1,第3位是2,直接在推导式里取值就行。

基础实现方式

先定义你的原列表:

X = ['GCA','GCC','GCT','GCG']

然后用列表推导式分别生成三个新列表:

# 提取每个字符串的第1位字符
C1 = [s[0] for s in X]
# 提取每个字符串的第2位字符
C2 = [s[1] for s in X]
# 提取每个字符串的第3位字符
C3 = [s[2] for s in X]

运行后就能得到你想要的结果:

  • C1 = ['G', 'G', 'G', 'G']
  • C2 = ['C', 'C', 'C', 'C']
  • C3 = ['A', 'C', 'T', 'G']

更简洁的进阶写法

如果想一次性生成三个列表,还可以用zip函数来简化代码,效率也更高:

# zip(*X)会把每个字符串的对应位置字符打包成元组
C1, C2, C3 = zip(*X)
# 如果需要列表类型而非元组,再转换一下
C1, C2, C3 = list(C1), list(C2), list(C3)

这个方法尤其适合原列表元素数量较多的场景,代码会更紧凑。

内容的提问来源于stack exchange,提问作者dk09

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 12:27:29