python - 如何检查字符串是否包含不需要的字符

标签 python bioinformatics

我学习 Python 才几周,所以请多多包涵。假设我有 3 个变量:

AX557349 = "gcggatttactcaggggagagcccagataaatggagtctgtgcgtccacagaattcgcacca"
AX557350 = "tccgtgaaacaaagcggatgtaccggatttttattccggctatggggcaattccccgtcgcggagcca"
Tester = "atcgatccblah"

nucs = []
nucs.extend(AX557349, AX557350, Tester)

我只想返回包含除“a”、“t”、“c”或“g”以外的字符的列表元素。在这种情况下,测试员。我该怎么做呢?

最佳答案

有几种方法。您可以使用 all使用生成器表达式:

def checker(x):
    acgt = set('acgt')
    return not all(i in acgt for i in x)

或者,使用 set.issubset或其语法糖 <= :

def checker(x):
    return not set(x) <= set('acgt')

结果:

checker(AX557349)  # False
checker(AX557350)  # False
checker(Tester)    # True

关于python - 如何检查字符串是否包含不需要的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52674896/

相关文章:

python - 这个列表是如何用切片赋值展开的?

python - 我应该使用 GeoDjango 绘制平面图吗?

python - 捕获 SIGINT 并调用对象中的方法

python - 通过从文本文件导入残基列表,使用 PyMol 脚本选择蛋白质中的保守残基

python - 随机 DNA 突变发生器

python - 如何处理 pandas 条形图中烦人的间隙

python - Django 中全局数据存储在哪里

time-series - 动态时间扭曲和 Needleman-Wunsch 算法有什么区别?

r - 查找字符串中重叠的长度

python - 对大型数据集进行操作