首页 > 解决方案 > 是否有更简单的语法来初始化初始化程序中的多个变量?

问题描述

我有一个类需要初始化 load() 函数返回的 4 个变量。将来负载可能会返回更多的变量值。这是我目前初始化 Runner 类的方式。有没有更正常的方法或更好的方法来做到这一点?

class Runner(object):
    
    def __init__(self):
        self.first, self.second, self.third, self.mapping = self.load()

    def load():
       ...
     return (first, second, third, mapping)

标签: python

解决方案


如果您将拥有大量此类变量,则它们不应该是变量,而是字典中的键。你要走的路,你必须在两个不同的地方跟踪每个位置代表什么(第五个变量,第六个变量等),并始终保持同步——这只是一个的问题。

所以使用字典,load()也可以更改为返回字典,这一切都归结为如何传递和复制字典;有许多简洁的解决方案。


推荐阅读