适用于先下后上的字符串。当上部开始时给出位置。python

适用于先下后上的字符串。当上部开始时给出位置。python,python,for-loop,boolean,uppercase,lowercase,Python,For Loop,Boolean,Uppercase,Lowercase,如果我有一根绳子 ex = 'aaatttgggatgaATG' 我想找到以小写字母结尾的索引 因此,在这种情况下,它将是 indx_lower = 13 我如何获得该值 我是否必须在检查字符串中每个元素的布尔值时执行for循环 像这样 total_indx = range(0,len(ex)) for p,k in zip(ex,total_indx): if upper print k ? 是的,我不知道我会怎么做 您可以使用re next(i for i,j in enu

如果我有一根绳子

ex = 'aaatttgggatgaATG'
我想找到以小写字母结尾的索引

因此,在这种情况下,它将是

indx_lower = 13
我如何获得该值

我是否必须在检查字符串中每个元素的布尔值时执行for循环

像这样

total_indx = range(0,len(ex))

for p,k in zip(ex,total_indx):
    if upper print k ? 
是的,我不知道我会怎么做

您可以使用re

next(i for i,j in enumerate(ex) if j.isupper()) - 1
import re

ex = 'aaatttgggatgaATG'

print ex.index(re.search('[A-Z]', ex).group())
你可以使用re

import re

ex = 'aaatttgggatgaATG'

print ex.index(re.search('[A-Z]', ex).group())

最好的方法是不要使用for循环:

>>> print re.search("[A-Z]", "aaatttgggatgaATG").start()
13

re.search()
返回一个
MatchObject
对象,您可以通过调用它的
start()
方法来询问它从哪里开始。(但是如果没有匹配,
re.search()
将返回
None
)。

最好的方法是不要使用for循环:

>>> print re.search("[A-Z]", "aaatttgggatgaATG").start()
13

re.search()
返回一个
MatchObject
对象,您可以通过调用它的
start()
方法来询问它从哪里开始。(但是如果没有匹配,
re.search()
将返回
None
)。

最后一个小写字母位于索引12处。请记住,它们从0开始。这个问题的答案可能会对您有所帮助。最后一个小写字母位于索引12。记住它们从0开始可能这个问题的答案会帮助你接近结尾的“s”是什么?对不起,那是字符串,但我把它改为“ex”接近结尾的“s”是什么?对不起,那是字符串,但是我把它改成了“ex”
enumerate
比这里的
range
更惯用。
enumerate
比这里的
range
更惯用。