我开始在 python 中创建类,我对这些术语感到非常困惑,所以我找不到我的问题的答案,因为我不知道如何问这些问题,因此这篇文章的双重标题。我将尝试使用以下代码澄清我不知道如何提出的问题:
我想在一个简单的类中创建一个方法:
class SimpleClass:
add(self,Value)
#Magic goes here
SC=SimpleClass()
该方法应该等效于向类中添加一个新变量:
SC.NewVariableInsideTheClass="test"
但是通过一种方法,例如:
SC.NewVariableInsideTheClass.add("test")
在这两种情况下,“NewVariableInsideTheClass”之前都不存在,我是第一次在类中创建该变量。
所以该方法应该首先创建不存在的实例(我认为这是类中变量的名称),然后将其值设置为“test”,但我真的找不到/搜索如何做到这一点.. .
哪个是我需要的正确问题?
非常感谢!
- - - - - - - - - 编辑 - - - - - - - - - - -
好的,所以我想做的是在执行以下操作时获得相同的结果:
SC.NewVariableInsideTheClass.add("test")
做的时候:
SC.NewVariableInsideTheClass.add("test")
但两者都必须在课外完成,第一次使用“NewVariableInsideTheClass”!这里的目标是使用类作为变量存储,比如当一个变量第一次被使用时会发生一些事情,如果它已经存在(以 SC.NewVariableInsideTheClass 的形式)我将能够以不同的方式使用它. 希望现在更具体...
第二次编辑;原因 - - - - - - - - - - - - -
哇,您的回答的质量和细节给我留下了深刻的印象,对此我非常感激!我想让你知道我想要这个的原因:我正在创建一个简单的 python 脚本 IDE(现在主要用于学习 python,nhot 还没有用)。因此,代码的基础是它会一路创建新变量。由于该程序还将创建函数,因此我创建和处理变量的第一个解决方案是将创建的程序中的所有变量设为全局变量,并在每个新函数中再次调用它们。那个代码很丑所以我决定学习和使用一个类,但是由于每个程序中的变量都不同,我想标准化函数的创建(即不需要知道它是否是第一个函数,如果它需要初始化任何变量,或者如果它们已经存在),能够:- 将新变量存储在名为变量的列表中,即使它不存在,其名称也可以轻松访问 - 能够使用新值扩展先前的变量作为列表中的新项目 - 能够检索那些values 全部不使用全局变量,我遇到了这个解决方案。实际上我修改了你的代码,现在我正在使用你的代码,但是我没有命名“add”,而是命名为“append”,所以我可以自由地做:
SC.NewVar.append('这是新值') SC.NewVar.append('这是新值')
第一次,它将被创建(因为它不存在)但第二次附加新值,因此,我将能够调用它/玩它或从自动生成的任何其他函数中使用它-代码 :)