我想从列表中删除一个元素,以便元素包含'X'或'N'.我必须申请大型基因组.这是一个例子:
输入:
codon=['AAT','XAC','ANT','TTA']
Run Code Online (Sandbox Code Playgroud)
预期产量:
codon=['AAT','TTA']
Run Code Online (Sandbox Code Playgroud)
为了基础目的
>>> [x for x in ['AAT','XAC','ANT','TTA'] if "X" not in x and "N" not in x]
['AAT', 'TTA']
Run Code Online (Sandbox Code Playgroud)
但是如果你有大量的数据,我建议你使用dict或set
如果你有许多不同于X和N的字符,你可能会这样做
>>> [x for x in ['AAT','XAC','ANT','TTA'] if not any(ch for ch in list(x) if ch in ["X","N","Y","Z","K","J"])]
['AAT', 'TTA']
Run Code Online (Sandbox Code Playgroud)
注意:list(x)可以只是x,["X","N","Y","Z","K","J"]可以只是"XNYZKJ",并且参考gnibbler答案,他做了最好的一个.
还有一种使用过滤器的方法
lst = filter(lambda x: 'X' not in x and 'N' not in x, list)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3601 次 |
| 最近记录: |