Python | String size in memory



Method # 1: Using len () + encode ()

The simplest and most basic method that comes to mind is & # 8212 ; this convert the string to byte format and then extract its size.

# Python3 demo code
# getting the size of a string in bytes
# using encode () + len ()

 
# initialization string

test_string = " geekforgeeks "

  
# print the original line

print ( "The original string:" + str (test_string ))

 
  # using encode () + len ()
# getting the line size in bytes

res = len (test_string. encode ( `utf-8` ))

  
# print result

print ( "The length of string in bytes:" + str (res))

Output:

 The original string: geekforgeeks The length of string in bytes: 12 

Method # 2: Using sys.getsizeof ()

This task can also be done by one of the system calls offered by Python, like in the sys function library, the getsizeof function can get us the size in bytes of the desired string.

# Python3 demo code
# getting the line size in bytes
# using sys.getsizeof ()

import sys

 
# initializing string

test_string = "geekforgeeks"

 
# print the original strings

print ( "The original string : " + str (test_string))

  
# using sys.getsizeof ()
# getting the line size in bytes

res = sys.getsizeof (test_string)

 
# print result

print ( "The length of string in bytes:" + str (res))

Output:

 The original string: geekforgeeks The length of string in bytes: 12