recherche

Maison  >  Questions et réponses  >  le corps du texte

python - 为何print(my)还会输出小写的x,y,z?为何输出的不是字符串?

c=['x','y','z']

for my in c:
    my.capitalize()
    print(my)

在 IDE 中输出:

'X'
x
'Y'
y
'Z'
z

请问,my 不是已经都变成大写的了吗? 为何 print(my) 还会输出小写的 x,y,z

为何输出的不是字符串?

谢谢

大家讲道理大家讲道理2890 Il y a quelques jours630

répondre à tous(4)je répondrai

  • 伊谢尔伦

    伊谢尔伦2017-04-17 17:52:30

    my = my.capitalize()Écrire ainsi va changer. Les chaînes sont immuables, une nouvelle chaîne ne peut être créée que pour remplacer l'ancienne.

    répondre
    0
  • PHP中文网

    PHP中文网2017-04-17 17:52:30

    Parce que la majuscule est pure (évasion

    Regardez la signature de la fonction

    >>> help(str.capitalize)
    Help on method_descriptor:
    
    capitalize(...)
        S.capitalize() -> str
    
        Return a capitalized version of S, i.e. make the first character
        have upper case and the rest lower case.

    Il renvoie simplement une version majuscule de str sans changer la str d'origine

    répondre
    0
  • 高洛峰

    高洛峰2017-04-17 17:52:30

    str est un type immuable, str.capitalize n'agira pas sur la chaîne d'origine, mais renverra une nouvelle chaîne

    répondre
    0
  • 巴扎黑

    巴扎黑2017-04-17 17:52:30

    print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

    C'est la définition de la fonction d'impression de Python. C'est-à-dire que le paramètre de fin est ajouté par défaut, et sa valeur par défaut est 'n', donc il sera renvoyé à la ligne.

    répondre
    0
  • Annulerrépondre