programing

파이썬에서 문자열 크기를 구하는 방법은 무엇입니까?

magicmemo 2023. 6. 15. 21:46
반응형

파이썬에서 문자열 크기를 구하는 방법은 무엇입니까?

예를 들어, 문자열을 가져옵니다.

str = "please answer my question"

저는 그것을 파일로 쓰고 싶습니다.

하지만 나는 파일에 문자열을 쓰기 전에 문자열의 크기를 알아야 합니다.어떤 함수를 사용하여 문자열의 크기를 계산할 수 있습니까?

문자열의 길이를 말하는 경우 다음을 사용할 수 있습니다.

>>> s = 'please answer my question'
>>> len(s)  # number of characters in s
25

문자열의 크기(바이트)가 필요한 경우:

>>> import sys
>>> sys.getsizeof(s)
58

또한 문자열 변수를 호출하지 마십시오.str내장된 기능을 음영 처리합니다.

파이썬 3:

user225312의 답은 정확합니다.

A. 문자 수를 세는 방법str객체, 사용할 수 있습니다.len()함수:

>>> print(len('please anwser my question'))
25

B. 저장할 메모리 크기를 바이트 단위로 가져오려면 다음과 같이 하십시오.str객체, 사용할 수 있습니다.sys.getsizeof()기능.

>>> from sys import getsizeof
>>> print(getsizeof('please anwser my question'))
50

파이썬 2:

Python 2의 경우 복잡해집니다.

A.len()Python 2의 함수는 인코딩된 문자를 저장하기 위해 할당된 바이트 수를 반환합니다.str물건.

경우에 따라 문자 수와 같을 수 있습니다.

>>> print(len('abc'))
3

하지만 가끔은 그렇지 않을 수도 있습니다.

>>> print(len('йцы'))  # String contains Cyrillic symbols
6

그것은str내부적으로 가변 길이 인코딩을 사용할 수 있습니다.문자를 세는 방법str당신은 당신의 어떤 인코딩을 알고 있어야 합니다.str개체가 사용 중입니다.그런 다음 개체로 변환하고 문자 수를 가져올 수 있습니다.

>>> print(len('йцы'.decode('utf8'))) #String contains Cyrillic symbols 
3

B.sys.getsizeof()함수는 Python 3과 동일한 작업을 수행합니다 - 전체 문자열 개체를 저장하기 위해 할당된 바이트 수를 반환합니다.

>>> print(getsizeof('йцы'))
27
>>> print(getsizeof('йцы'.decode('utf8')))
32
>>> s = 'abcd'
>>> len(s)
4

str.len()을 사용하여 열의 요소 길이를 계산할 수도 있습니다.

data['name of column'].str.len() 

가장 파이썬적인 방법은 다음을 사용하는 것입니다.len()이스케이프 시퀀스의 '\' 문자는 카운트되지 않으며 올바르게 사용하지 않을 경우 위험할 수 있습니다.

>>> len('foo')
3
>>> len('\foo')
3
>>> len('\xoo')
  File "<stdin>", line 1
SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 0-1: truncated \xXX escape

당신은 파이썬 언어로 된 문자열의 길이를 찾고 싶습니까?단어의 길이를 찾으려면 렌 기능을 사용하면 됩니다.

string = input("Enter the string : ")

print("The string length is : ",len(string))

출력: -

문자열 입력: viral

문자열 길이는 5입니다.

제공된 응답은 적절합니다.

Python에서는 공백도 문자로 간주됩니다.그러나 예를 들어 사용자 이름의 총 문자 수를 세는 기능을 만들려면 공백을 제거해야 할 수 있습니다.이 작업은 다음을 사용하여 쉽게 수행할 수 있습니다..replace()방법.

예:

name = "Steve Wozniak"
number = len(name.replace(" ", ""))
print(number)

여기서 출력은 13(공백 포함)이 아닌 12(공백 제외)입니다.

언급URL : https://stackoverflow.com/questions/4967580/how-to-get-the-size-of-a-string-in-python

반응형