0
votes

Pourquoi je ne peux pas utiliser `str.isupper` dans la liste des chaînes?

Je veux imprimer tous les caractères majuscules de manière triée

string = "CbcBcbaA" # type(string) => str
sort_string = sorted(string) # type(sort_string) => list
for char in string:
# type(char) => str
   if char.isupper:
      print(char)


1 commentaires

Vous devez appeler char.isapper ()


4 Réponses :


7
votes

Vous oubliez d'appeler la fonction. La fonction elle-même est toujours la vérité, c'est-à-dire xxx

équivaut à xxx

vous souhaiterez xxx < / pré>

à la place.


4 commentaires

Battez-moi-moi: ') GG


Nice trucs, avancé. Je vais garder ma réponse à des éclaircissements, comme dans: la raison pour laquelle c'est vrai est que la méthode existe. Si vous ajoutez ça au tien, je vais supprimer le mien.


@ A.Abramov Ce n'est pas vraiment vrai, cependant; S'il n'a pas Existe , vous obtiendrez un attributError. En outre, tout objet peut remplacer __ non zéro __ pour simuler une fausseté.


Foire, j'ai retiré le mien.



1
votes

Vous n'appelez pas la fonction, ne vous mettez en place que la fonction membre en tant qu'objet, qui sera néanmoins évaluée. Vous devez utiliser char.isupper () comme ceci: xxx


0 commentaires

0
votes

Vous devez changer une partie du code Voici le code xxx

sortie abc


1 commentaires

Votre réponse n'ajoute rien à la réponse acceptée.



-1
votes

J'espère que cela vous aidera,

string = "CbcBcbaA" # type(string) => str

# define `split` function to split your string in character-based array
def split(word): 
    return [char for char in word] 

splt = split(string)
sort_string = sorted(splt) # type(sort_string) => list
for char in sort_string:
# type(char) => str
   if char.isupper():
      print(char)


0 commentaires