我创建了一个类,我想将 self.variable 传递到方法中的可选参数中。原因是因为我想将信息存储在其他方法中创建的 Self.variable 中,但是,如果我使用该方法,我希望必须选择使用我自己的手动信息覆盖 self.variable。
可悲的是,这是不允许的,因此我想知道为什么不可以!?另外,我想知道是否有人知道实现相同目标的 Pythonic 方法?
这是我尝试过的示例:
# example:
class Example(Object)
def __init__(self):
self.variable = []
def fill_variable(self):
self.variable = [random.randint(1,10)] * 10
def use_variable(self, random_numbers = self.variable)
print(random)
test.Example()
test.fill_variable()
test.use_variable()
# or
test.use_variable(random_numbers=[1,2,3,4,5,6,7,8,9,10])
Run Code Online (Sandbox Code Playgroud)
我的期望是test.use_variable()打印10随机test.use_variable(random_numbers=[1,2,3,4,5,6,7,8,9,10])数
print(1,2,3,4,5,6,7,8,9,10)
感谢您的帮助和解释!
不幸的是,这是不可能的,您可以使用if语句检查它是否具有相同的值(None)如果是,则将其分配给self.variable:
def use_variable(self, random_numbers = None):
if random_numbers == None:
random_numbers = self.variable
print(random_numbers)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1787 次 |
| 最近记录: |