簡體   English   中英

在Python中創建唯一對象列表

[英]Make List of Unique Objects in Python

可以在Python中“填充”一個數組,如下所示:

> [0] * 10
[0, 0, 0, 0, 0, 0, 0, 0, 0, 0]

我想使用此示例原則快速創建類似對象的列表:

> a = [{'key': 'value'}] * 3
> a
[{'key': 'value'}, {'key': 'value'}, {'key': 'value'}]

但看起來這些對象是相互關聯的:

> a[0]['key'] = 'another value'
> a
[{'key': 'another value'}, {'key': 'another value'}, {'key': 'another value'}]

鑒於Python沒有clone()方法(這是我首先想到的), 如何創建唯一對象而不需要聲明for循環並調用append()來添加它們?

謝謝!

一個簡單的列表理解應該做的伎倆:

>>> a = [{'key': 'value'} for _ in range(3)]
>>> a
[{'key': 'value'}, {'key': 'value'}, {'key': 'value'}]
>>> a[0]['key'] = 'poop'
>>> a
[{'key': 'poop'}, {'key': 'value'}, {'key': 'value'}]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM