Introduction to the id() function in python and how to read the list (code example)

不言
Release: 2019-02-25 10:50:47
forward
3269 people have browsed it

This article brings you an introduction to the id() function in python and the method of reading the list (code examples). It has certain reference value. Friends in need can refer to it. I hope it will be useful to you. Helps.

id(object)

Return the “identity” of an object. This is an integer (or long integer) which is guaranteed to be unique and constant for this object during its lifetime. Two objects with non-overlapping lifetimes may have the same id() value.
CPython implementation detail: This is the address of the object in memory.

You need to talk about this function Let’s first understand pyhton’s variable storage mechanism:
Variable: It is a dynamic variable, and there is no need to declare the type in advance.

When we write: a = 'ABC', the Python interpreter does two things:

  1. Creates a string of 'ABC' in memory ;

  2. Create a variable named a in memory and point it to 'ABC'.

id(a) reads the memory address of a

Program example

def addElement(_list):
    print(6,id(_list))
    _list.append(0)
    print(7,id(_list))
    return _list

if __name__=="__main__":
    list1=[1,2,3]
    print(1,id(list1))
    list2 = addElement(list1)
    print(2,list1)
    print(3,id(list1))
    print(4,list2)
    print(5,id(list2))
Copy after login

Execution result:

(1, 48757192L)
(6, 48757192L)
(7, 48757192L)
(2, [1, 2, 3, 0])
(3, 48757192L)
(4, [1, 2, 3, 0])
(5, 48757192L)
Copy after login

two Key points:

  1. After the return statement returns, list1 has become its return value instead of the original value

  2. Since the definition The essence of the variable list1 is a memory box. The variable itself is always passed to the function, so the address does not change. It is still returned in the end, but a new value is added later. After using the assignment method a=b The memory addresses of ab are consistent. Therefore, the memory addresses of list1, list2, and _list have not changed from beginning to end

The above is the detailed content of Introduction to the id() function in python and how to read the list (code example). For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:segmentfault.com
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template