为了账号安全,请及时绑定邮箱和手机立即绑定

创建一个字典,每次使用它的值都会更新

创建一个字典,每次使用它的值都会更新

达令说 2021-12-29 20:02:27
我想创建一个每次使用时都会更新其键的字典我尝试过的:import itertoolschanging_dict = {    "key1": next(change),    "key2": next(change),    "key3": next(change),    "key4": 10010}print(changing_dict)# Output# {'key1': 100, 'key2': 105, 'key3': 110, 'key4': 10010}print(changing_dict)# Output# {'key1': 100, 'key2': 105, 'key3': 110, 'key4': 10010}预期产出print(changing_dict)# Output# {'key1': 100, 'key2': 105, 'key3': 110, 'key4': 10010}print(changing_dict)# Output# {'key1': 115, 'key2': 120, 'key3': 125, 'key4': 10010}关于我如何做到这一点的任何帮助,或者这是否可能因为在创建 dict 时计算可迭代值。实际的问题是创建配置文件,每次使用这个 dict 时,我都会用新的端口号来获取它。
查看完整描述

2 回答

?
德玛西亚99

TA贡献1770条经验 获得超3个赞

尝试使用这个函数,你可以有一个函数,所以每次运行时,change变量都会不同:


change = iter(range(100, 200, 5)) # just an example


def next_dict():

    changing_dict = {

        "key1": next(change),

        "key2": next(change),

        "key3": next(change),

        "key4": 10010

    }

    return changing_dict

print(next_dict())

print(next_dict())

输出:


{'key1': 100, 'key2': 105, 'key3': 110, 'key4': 10010}

{'key1': 115, 'key2': 120, 'key3': 125, 'key4': 10010}


查看完整回答
反对 回复 2021-12-29
?
慕村9548890

TA贡献1884条经验 获得超4个赞

您可以定义一个类而不是这样的字典:


change = iter(range(5))


class c:

    def get_key1():

        return next(change)


c.get_key1() # Output: 0

c.get_key1() # Output: 1

像某些评论一样,我建议您提供更多上下文,因为可能会有更多“Pythonic”来解决您的用例。


查看完整回答
反对 回复 2021-12-29
  • 2 回答
  • 0 关注
  • 129 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号