2017-06-28 6 views
-2

Warum erhalte ich False, wenn ich tun:Wie funktioniert die isupper Methode hier?

>>> "123".isupper() 
False 

Aber True, wenn ich tun:

>>> "ABC123".isupper() 
True 

Ist das irgendwo dokumentiert?

+2

Ja, es ist in der Dokumentation dokumentiert. "Wahr zurückgeben, wenn alle umschlossenen Zeichen [4] in der Zeichenfolge Großbuchstaben sind * und mindestens ein verkleinertes Zeichen * vorhanden ist, ansonsten falsch." Der Schwerpunkt liegt bei mir. –

+0

@JamesKPolk ist es nicht in http://python-reference.readthedocs.io/en/latest/docs/str/isupper.html dokumentiert, was ich gefunden habe, als ich "python isupper" googelte (oder bin ich ein a ** Loch für nicht zu wissen, dass die Doco in https://docs.python.org/2/library/stdtypes.html begraben ist) – maxymoo

+0

ah, nun, auch die offizielle Dokumentation lässt manchmal viel zu wünschen übrig, aber für diese Methode scheint es genau. –

Antwort

1

Per the Python 3.6 documentation:

str.isupper()

return true, wenn alle verrohrten Zeichen [4] im String in Großbuchstaben sind, und es gibt mindestens einen verrohrten Charakter, andernfalls false.

Da Ziffern sind nicht verrohrten Zeichen, gibt es nicht mindestens einen verrohrten Charakter somit falsch er zurückkehrt. Im zweiten Beispiel gibt es mindestens ein verkapseltes Zeichen und sie sind alle in Großbuchstaben, also ist es wahr.

Verwandte Themen