Open In App

Python Program to Find and Print Address of Variable

Last Updated : 31 Aug, 2021
Improve
Improve
Like Article
Like
Save
Share
Report

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


Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads