python的id方法_python对象ID

如果您只想创建一个本地唯一的值,那么可以使用一个非常简单的自动递增方法。

data = [

{"name": "Bill"},

{"name": "Javier"},

{"name": "Jane"},

{"name": "Xi"},

{"name": "Nosferatu"},

]

current_id = 1

for record in data:

record["id"] = current_id

current_id += 1

print(record)

# {'name': 'Bill', 'id': 1}

# {'name': 'Javier', 'id': 2}

# {'name': 'Jane', 'id': 3}

# {'name': 'Xi', 'id': 4}

# {'name': 'Nosferatu', 'id': 5}

要添加新值,如果不这样初始化,可以使用

max(d.get("id", 0) for d in data)

.

这可能会导致各种问题,具体取决于您的用例。如果你不想担心这一点,你也可以向它扔uuid;它们很重,但是很容易生成,并且对独特性有合理的信心。

from uuid import uuid4

data = [{"name": "Conan the Librarian"}]

data[0]["id"] = str(uuid4())

print(data)

# 'id' will be different each time; example:

# [{'name': 'Conan the Librarian', 'id': '85bb4db9-c450-46e3-a027-cb573a09f3e3'}]

但是,在不了解您的实际用例的情况下,不可能确定这些方法中的一种或两种是有用的还是合适的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值