Python Program to Find and Print Address of Variable
In this article, we are going to see how to find and print the address of the Python variable.
It can be done in these ways:
- Using id() function
- Using addressof() function
- Using hex() function
Method 1: Find and Print Address of Variable using id()
We can get an address using id() function, id() function gives the address of the particular object.
Syntax: id(object)
where, object is the data variables.
Here we are going to find the address of the list, variable, tuple and dictionary.
Python3
# get id of list a = [ 1 , 2 , 3 , 4 , 5 ] print ( id (a)) # get id of a variable a = 12 print ( id (a)) # get id of tuple a = ( 1 , 2 , 3 , 4 , 5 ) print ( id (a)) # get id of a dictionary a = { 'a' : 1 , 'b' : 2 } print ( id (a)) |
Output:
140234866534752 94264748411744 140234904267376 140234866093264
Method 2: Find and Print Address of Variable using addressof()
we can also get memory addresses using these functions, ctypes is a foreign function library for Python. It provides C-compatible data types and allows calling functions in DLLs or shared libraries.
Syntax:addressof(c_int(object))
where object is the data variables
Example: Python program to get the memory address of a variable.
Python3
# import addressof, # c_int modules from ctypes module from ctypes import c_int, addressof # get memory address of variable a = 44 print (addressof(c_int(a))) |
Output:
140234866278064
Method 3: Find and Print Address of Variable using hex()
Here we will call the hex(address) function, to convert the memory address to hexadecimal representation.
Syntax: hex(id(object))
where,
- hex() is the memory hexadecimal representation to the address
- id is used to get the memory of the object
- object is the data
Example: Python program to get the memory address in hexadecimal representation.
Python3
# get id of list in hexadecimal representation a = [ 1 , 2 , 3 , 4 , 5 ] print ( hex ( id (a))) # get id of a variable in hexadecimal representation a = 12 print ( hex ( id (a))) # get id of tuple in hexadecimal representation a = ( 1 , 2 , 3 , 4 , 5 ) print ( hex ( id (a))) # get id of a dictionary in hexadecimal representation a = { 'a' : 1 , 'b' : 2 } print ( hex ( id (a))) |
Output:
0x7fba9b0ae8c0 0x5572da858b60 0x7fba9f3c4a10 0x7fba9b05b8c0
Please Login to comment...