Python 3:
Die Antwort von user225312 ist richtig:
A. Um die Anzahl der Zeichen im str
Objekt zu zählen, können Sie folgende len()
Funktionen verwenden:
>>> print(len('please anwser my question'))
25
B. Um die Speichergröße in Bytes zu ermitteln, die dem Speicherobjekt zugewiesen sind str
, können Sie die sys.getsizeof()
Funktion verwenden
>>> from sys import getsizeof
>>> print(getsizeof('please anwser my question'))
50
Python 2:
Für Python 2 wird es kompliziert.
A. Die len()
Funktion in Python 2 gibt die Anzahl der Bytes zurück, die zum Speichern codierter Zeichen in einem str
Objekt zugewiesen wurden .
Manchmal entspricht es der Anzahl der Zeichen:
>>> print(len('abc'))
3
Aber manchmal wird es nicht:
>>> print(len('йцы')) # String contains Cyrillic symbols
6
Dies liegt daran, dass die Codierungstr
mit variabler Länge intern verwendet werden kann. Um Zeichen zu zählen str
, sollten Sie wissen, welche Codierung Ihr str
Objekt verwendet. Dann können Sie es in ein unicode
Objekt konvertieren und die Anzahl der Zeichen ermitteln:
>>> print(len('йцы'.decode('utf8'))) #String contains Cyrillic symbols
3
B. Die sys.getsizeof()
Funktion macht dasselbe wie in Python 3 - sie gibt die Anzahl der Bytes zurück, die zum Speichern des gesamten Zeichenfolgenobjekts zugewiesen wurden
>>> print(getsizeof('йцы'))
27
>>> print(getsizeof('йцы'.decode('utf8')))
32