这篇文章是我上一篇文章(用Python创建和检索对象列表)的后续。你知道吗
我必须按以下方式修改代码:
脚本1
#!/usr/bin/python
class Porsche:
""" class representing a Porsche """
def __init__(self, color):
self.color = color
def create_porsche(parameter_1, parameter_2):
myPorsche = Porsche(color = parameter_1)
myPorsche2 = Porsche(color = parameter_2)
create_porsche(parameter_1 = 'blue', parameter_2 = 'red')
porsche_container = (myPorsche, myPorsche2)
我想让porsche\u container=(myPorsche,myPorsche2)和我之前的脚本一样工作:
旧剧本1
#!/usr/bin/python
class Porsche:
""" class representing a Porsche """
def __init__(self, color):
self.color = color
myPorsche = Porsche(color = 'blue')
myPorsche2 = Porsche(color = 'red')
porsche_container = (myPorsche, myPorsche2)
我该怎么做?你知道吗
rgds公司
create_porsche
不返回任何内容,因此您不知道创建了什么。让它返回它创建的汽车列表,然后可以将其存储在全局变量中。你知道吗上面发布的代码不起作用的原因是变量
myPorsche
和myPorsche2
是在函数create_porsche
中定义的,因此它们的作用域是该函数的。这意味着您无法在代码块之外看到或访问它们。如果您想了解它们,请使create_porsche
返回它们。(注意:可以告诉Python它们应该是全局变量,也就是说,在使用global
关键字的函数中没有作用域,但是除非必须这样做,否则不应该这样做。)我不想在这里粗鲁,但是你读过Python教程吗?类似于Dive Into Python的内容可能会帮助您理解类似的内容(函数作用域和返回值)。你知道吗
下面是我关于如何创建
Porsche
对象并将它们添加到容器的介绍。你知道吗在剧本2中:
相关问题 更多 >
编程相关推荐