python字符计数请帮我im一个nooob

2024-10-03 17:28:47 发布

您现在位置:Python中文网/ 问答频道 /正文

嗨伙计们有一点小麻烦python非常新的它我试图计数多少次一组字符出现在一行无论如何,我可以让它计数,但它计数4 ie

a = raw_input('insert pirate bob speak line line 1 - ')
b = raw_input('insert pirate bob speak line line 2 - ')
c = raw_input('insert pirate bob speak line line 3 - ')

我试着让t计算一个句子中有多少次出现rr,但只有当我启动完整代码并输入必要的输入1.yarrr harrr 我的心肝 和一瓶RRRUM它计算了双r的数量我只想知道有多少句子含有双r


Tags: 代码inputrawlinerr字符ie句子
1条回答
网友
1楼 · 发布于 2024-10-03 17:28:47

如果希望每行找到一个rr:

import re
myline = 'harrrr!'
matches = re.findall('(rr+)',myline)
if matches: 
    print "exactly",len(matches)," rr was found"

说明:

若要了解有关正则表达式的详细信息,请键入 帮助(re)

这个特殊的正则表达式表示: 在一行中搜索包含两个或多个“r”的所有组

如果要搜索rr-s而不是RRR,请使用:

^{pr2}$

哪一个稍微困难一点(搜索所有那些“rr”,它们要么前面有一个不是r的字符,要么这行从那里开始,后面要么是一个不是r的字符,要么是行尾在那里,而不关心这些后面和前面的字符)

一般来说,您可以通过以下方式改进“控制流”:

import re
while True: #forever or at least until break-[up], you know, love-style forever;)
    line = raw_input("Howdy? ")
    if line: # if the user actually typed in something
        matches = re.findall('(rr+)',line)
        if matches: 
            print "exactly",len(matches)," rr was found"
        else:
            print "you'rrre NOT a pirrate!"
    else:
        break #quit

相关问题 更多 >