programing

문자열에는 몇 바이트가 있습니까?

copyandpastes 2021. 1. 17. 12:31
반응형

문자열에는 몇 바이트가 있습니까?


문자열이 메모리에서 차지하는 바이트 수를 알려주는 기능이 있습니까?

전체 문자열을 한 번에 전송하려면 소켓 버퍼의 크기를 설정해야합니다.


import sys
sys.getsizeof(s)

# getsizeof(object, default) -> int
# Return the size of object in bytes.

그러나 실제로 표현 된 길이를 알아야하므로 다음과 같은 len(s)것으로 충분해야합니다.


Python 2.x str인 경우 len. Python 3.x str(또는 Python 2.x unicode) 인 경우 먼저 선호하는 인코딩을 사용하여 인코딩 ( bytes또는 str각각) 'utf-8'한 다음 len인코딩 된 bytes / str 객체 를 가져옵니다 .


예를 들어 ASCII 문자는 각각 1 바이트를 사용합니다.

>>> len("hello".encode("utf8"))
5

중국어는 각각 3 바이트를 사용합니다.

>>> len("你好".encode("utf8"))
6

참조 URL : https://stackoverflow.com/questions/4013230/how-many-bytes-does-a-string-have

반응형