【发布时间】:2014-05-12 01:33:06
【问题描述】:
今天我想知道类比可调用函数有什么优势。我知道这似乎是一个奇怪的问题,但我正在编写一个基于太空的游戏,我想做一些显示生命支持的东西(氧气、氮气) 基本上,我有这个功能:
oxygen = 100
nitrogen = 100
air = [oxygen, nitrogen]
print("You can use check(air) to see the quantities of n2 and o2 available.")
def check(variable):
if variable == air:
print("Your oxygen level is {0}% and your nitrogen level is {1}%.".format(oxygen, nitrogen))
因此,每当玩家键入 check(air) 时,他们都可以看到飞船中的氮气和氧气含量。使用它,我还可以让他们通过扩展 check() 函数来查看其他函数。我想知道为游戏这样做是否比这样做更好:
class Lifesupport(object):
def __init__(self, oxygen, nitrogen):
self.oxygen = oxygen
self.nitrogen = nitrogen
air = Lifesupport(40, 60)
#This part is for checking functionality
print("Your air has {0}% oxygen and {1}% nitrogen".format(air.oxygen, air.nitrogen))
就个人而言,我更喜欢该功能,尽管我真的不知道哪个更好用于此目的。我知道你可以输入 air.oxygen 来查看氧气水平,我可能会使用 check() 函数来单独打印一个类“bundle”,比如 'air'.."
基本上...与我展示的代码这样的函数相比,使用类的真正优势是什么?出于我的目的,使用类或函数或两者都更好吗?
【问题讨论】:
标签: python function class python-3.x