Python 我想计算偶数和字符串中大写字母的数量?

Python 我想计算偶数和字符串中大写字母的数量?,python,Python,#输出: 请输入:DFG2468789FGHHH 大写字母:3 ['246878']**例如:如果用户输入:“AMITamit1234”,则输出必须为大写:4,偶数:2 4**如果输入为246898,则我只得到2468,而不是最后的8。有人能帮忙吗**我想要这个输出,请键入:DFG246789FGHHHH大写字母:3偶数:['2 4 6 8']将您的正则表达式从,*\d*[02468]更改为,*[02468]以捕获偶数。为什么需要正则表达式来捕获偶数?大写=len([x代表msg中的x,如果x.

#输出: 请输入:DFG2468789FGHHH 大写字母:3
['246878']

**例如:如果用户输入:“AMITamit1234”,则输出必须为大写:4,偶数:2 4**如果输入为246898,则我只得到2468,而不是最后的8。有人能帮忙吗**我想要这个输出,请键入:DFG246789FGHHHH大写字母:3偶数:['2 4 6 8']将您的正则表达式从
,*\d*[02468]
更改为
,*[02468]
以捕获偶数。为什么需要正则表达式来捕获偶数?
大写=len([x代表msg中的x,如果x.isupper()])偶数=[y代表过滤器中的y(lambda x:x.isdigit(),msg)如果int(y)%2==0]
我不知道为什么它被否决了。你的答案解决了问题。非常感谢你没有问题
evens=['+evens+']
line是可选的,我之所以把它放进去,是因为你想让输出看起来像它。如果你删除了那一行,它只会是列表中没有它的数字。谢谢!!如果我必须从字符串中计算偶数呢?例如:偶数=['0'、'2'、'4'、'6'、'8']evens=4你是说如果你想从输入中计算偶数的数目吗?如果是的话,变量evens将包含所有偶数加上括号和引号,因此,你所要做的就是
len(evens)-4
是要计算偶数,我试过了,但不起作用
import re
msg = input("Please type: ")
print("Capital Letters: ", sum(1 for c in msg if c.isupper()))
a = re.findall(',*\d*[02468]',msg)
print (a)
message = input('Please type: ')


capitals = (sum(1 for c in message if c.isupper()))

even = ['0','2','4','6','8']
evennumbers = []
for x in range(0,len(message)):
    if message[x] in even:
        evennumbers.append(message[x])

evens = ''
for x in range(0,len(evennumbers)):
    evens = evens + str(evennumbers[x])

capitals = str(capitals)
evens = "['" + evens + "']"

print('Capitals : ' + capitals, evens)
#to print the length of uppercase and print the even number present in the input

        msg = input("Please type: ")
        print("Capital Letters: ", len([x for x in msg if x.isupper()]))
        print("even numbers:", len([y for y in filter(lambda x: 
        x.isdigit(), msg) if int(y)%2 ==0]))

#long code to print the same:
            message = input("enter alphanumeric:")
            capitals = (sum(1 for c in message if c.isupper()))
            evens = ['0','2','4','6','8']
            evennumbers = []
            for x in range(0,len(message)):
                if(message[x] in evens):
                    evennumbers.append(message[x]) 
            capitals = str(capitals)
            evennumbers = str(evennumbers)
            print('Capitals : ' + capitals + ', Evens : ' + evennumbers')


#short code to print the length of Uppercase and even numbers in the input

        msg = input("Please type: ")
        print("Capital Letters: ", len([x for x in msg if x.isupper()]))
        print("even numbers:", len([y for y in filter(lambda x: x.isdigit(), msg) if int(y)%2 ==0]))