Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.python > #86194

Re: id() and is operator

From Terry Reedy <tjreedy@udel.edu>
Subject Re: id() and is operator
Date 2015-02-23 01:14 -0500
References <87f18c68-120d-44f2-bd34-6f73c69365da@googlegroups.com>
Newsgroups comp.lang.python
Message-ID <mailman.19054.1424672057.18130.python-list@python.org> (permalink)

Show all headers | View raw


On 2/22/2015 12:53 PM, LJ wrote:
> Hi everyone. Quick question here. Lets suppose if have the
> following numpy array:

> b=np.array([[0]*2]*3)
>
> and then:
>
>>>> id(b[0])
> 45855552
>>>> id(b[1])
> 45857512
>>>> id(b[2])
> 45855552
>
> Please correct me if I am wrong,

You are, as other explained
 > but according to this b[2] and b[0] are the same object.
>>>> b[0] is b[2]
> False
>
> Any clarification is much appreciated.

In Python, 'two' objects can only be the same thing if they exist 
simultaneously.  Retry your experiment with simultaneous objects.

 >>> b0 = b[0]
 >>> b1 = b[1]
 >>> b2 = b[2]  # etc.

The three objects will have different ids.  The mail purpose of the id 
function is to text properties of a particular implementation.  It also 
has uses with ctypes.  Beginners should generally ignore it, and 
certainly not touch it until reading and understanding its doc.  The 
main use for 'is' is for 'is None' comparison.

-- 
Terry Jan Reedy

Back to comp.lang.python | Previous | NextPrevious in thread | Find similar | Unroll thread


Thread

id() and is operator LJ <luisjosenovoa@gmail.com> - 2015-02-22 09:53 -0800
  Re: id() and is operator Laura Creighton <lac@openend.se> - 2015-02-22 19:13 +0100
  Re: id() and is operator Chris Angelico <rosuav@gmail.com> - 2015-02-23 06:23 +1100
  Re: id() and is operator Gary Herron <gherron@digipen.edu> - 2015-02-22 11:16 -0800
  Re: id() and is operator Laura Creighton <lac@openend.se> - 2015-02-22 20:58 +0100
  Re: id() and is operator Marko Rauhamaa <marko@pacujo.net> - 2015-02-22 23:25 +0200
    Re: id() and is operator Chris Angelico <rosuav@gmail.com> - 2015-02-23 08:36 +1100
    Re: id() and is operator Terry Reedy <tjreedy@udel.edu> - 2015-02-23 01:02 -0500
      Re: id() and is operator Marko Rauhamaa <marko@pacujo.net> - 2015-02-23 08:31 +0200
    Re: id() and is operator Gary Herron <gherron@digipen.edu> - 2015-02-22 22:29 -0800
  Re: id() and is operator Steven D'Aprano <steve+comp.lang.python@pearwood.info> - 2015-02-23 12:31 +1100
  Re: id() and is operator Terry Reedy <tjreedy@udel.edu> - 2015-02-23 01:14 -0500

csiph-web