Object in List : how?
MRAB
python at mrabarnett.plus.com
Sat Jul 23 17:57:34 EDT 2022
On 23/07/2022 05:28, Khairil Sitanggang wrote:
> Hello Expert:
>
> I just started using python. Below is a simple code. I was trying to check
> if, say, NO1 is not in the NODELIST[:].NO
> How can I achieve this purpose?
>
> Regards,
> -Irfan
>
>
> class Node:
> def __init__(self):
> self.NO = 0
> self.A = 20
>
> NODE = Node()
> NODELIST = []
>
> NODE.NO = 10
> NODELIST.append(NODE)
>
> NODE.NO = 20
> NODELIST.append(NODE)
>
> NODE.NO = 30
> NODELIST.append(NODE)
>
>
> NO1 = 20
> if NO1 not in NODELIST[:].NO ???
No, you can't do it that way. You have to iterate through the list and
check each member individually:
if any(NO1 == N.NO for N in NODELIST):
And another thing: you've created only 1 node, and you're changing it
each time before adding it to the list, so the list ends up with 3
references to the _same_ object.
More information about the Python-list
mailing list