gpt4 book ai didi

Python 在某一点切割字符串

转载 作者:太空宇宙 更新时间:2023-11-04 08:43:26 25 4
gpt4 key购买 nike

好的,我会解释我有什么和需要做什么。

我有一个带有多个键的字典,但我会为这个例子给出一个和一个由 A、T、C 和 G 组成的字符串。([3:] 表示它应该在值的第 3 个索引上拆分)

Dict = {'EcoRV': 'GATATC'[3:]} 
String = 'AAAAGATATCAAAGATATCAAAA'

现在这是我需要做的。我必须在字符串中查找值并将字符串拆分为 dict 键的值,最后得到一个包含拆分部分的列表,因此在这种情况下,它必须拆分为 'TC' 并取第一个 C 并将其拆分并结束:

List = ['AAAAGATA','TCAAAGATA','TCAAAA']

我用 split 试过了,但它丢失了 'TC',我需要保留它们。

最佳答案

您已经了解了拆分的工作原理——如何在要分隔的字母之间添加一个您在字符串中找不到的任意字符,然后拆分:

test_str = 'AAATTTCCCGGGTCGGGAAA'
print test_str.replace('TC', 'T:C').split(':')

打印 ['AAATTT', 'CCCGGGT', 'CGGGAAA']

如果您想使用字典进一步扩展它,您可以更改 replace 参数以使用具有字符串格式的字典值。例如:

temp_dict = {'Testenzyme': 'TC',
'Asongtoruinzine': 'GA'}

test_str = 'AAATTTCCCGGGTCGGGAAA'

out_dict = dict()

for key, val in temp_dict.items():
out_dict[key] = test_str.replace(val, '{}:{}'.format(val[0], val[1])).split(':')

print out_dict

打印 {'Asongtoruinzine': ['AAATTTCCCGGGTCGGG', 'AAA'], 'Testenzyme': ['AAATTT', 'CCCGGGT', 'CGGGAAA']}

编辑:阅读评论,我看到您想指定在字典值中拆分字符串的位置。如果将字典值写成双元素列表会更容易,其中两个元素代表要拆分的字符串的不同部分。例如,您可以执行以下操作:

temp_dict = {'Testenzyme': ['T', 'C'],
'Asongtoruinzine': ['GT', 'C']}

test_str = 'AAATTTCCCGGGTCGGGAAA'

out_dict = dict()

for key, val in temp_dict.items():
out_dict[key] = test_str.replace(''.join(val), ':'.join(val)).split(':')

print out_dict

关于Python 在某一点切割字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42830679/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com