0

这就是问题所在,它只包含字符……但我想将它们分开。计算空格和数字分机。编辑 {“空间” ment; [空格键] 单词之间的空格,(" ")。

def main():
    sen = (input(' Type something: '))
    printStats(sen)

def printStats(input):
    print('Statistics on your sentence: ')
    print('   Digits:', digit(input))
    print('   Spaces:', space(input))


def digit(input):
    count = 0
    for digit in input:
        count +=1
    return (count)

def space(input):
    count = 0
    for space in input:
        count +=1
    return (count)

main()
4

1 回答 1

0
def digit(input):
    count = 0
    for digit in input:
        count +=1
    return (count)

所有这些都是计算字符串中的字符数。它与 相同len(input)。(请注意,您不应该调用 variables input,这会掩盖 python 内置函数)您的space函数做同样的事情,因为它与重命名的局部变量是同一个函数。

如果要修复上述函数,则需要在循环中分别检查和的if语句。for.isdigit().isspace()

对于space,至少,您应该真正改用.count()字符串的方法。

a = 'this is my string'

a.count(' ')
Out[11]: 3

您的方法适用于digit(如果您if在循环中实现一些逻辑)。或者有列表理解方法,sum(c.isdigit() for c in my_string).

于 2013-10-27T21:58:19.123 回答