Comment compter les chiffres, les lettres, les espaces pour une chaîne en Python

Je suis en train de faire une fonction pour détecter combien de chiffres,une lettre,des espaces, et d'autres pour une chaîne de caractères.
Savez-vous quel est le problème avec mon code? et puis-je améliorer mon code pour être plus simple et plus précis?

merci! (voici le code révisé)

def count(x):
    length = len(x)
    digit = 0
    letters = 0
    space = 0
    other = 0
    for i in x:
        if x[i].isalpha():
            letters += 1
        elif x[i].isnumeric():
            digit += 1
        elif x[i].isspace():
            space += 1
        else:
            other += 1
    return number,word,space,other

il a montré cette erreur:

>>> count(asdfkasdflasdfl222)
Traceback (most recent call last):
  File "<pyshell#4>", line 1, in <module>
    count(asdfkasdflasdfl222)
NameError: name 'asdfkasdflasdfl222' is not defined

source d'informationauteur ray