python - 为何print(my)还会输出小写的x,y,z?为何输出的不是字符串?
大家讲道理
大家讲道理 2017-04-17 17:50:30
0
4
622
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

为何输出的不是字符串?

谢谢

大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

répondre à tous(4)
伊谢尔伦

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.

Ty80

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

小葫芦

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

巴扎黑
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.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal