我仍然相对较新的Python和一些概念,所以你不得不忍受我。
我正在尝试创建一个动物(在这种情况下是一匹马),并自动生成一些属性。在这里,我尝试使用get_heights方法生成高度函数并将其应用于类。我没有收到任何错误,但是当我将其定义为独立函数时,它不会打印出生成的数字。 (课外)。
我在Horse_heights.get_heights
调用中添加了括号,但后来我收到类型错误get_heights() takes exactly 3 arguments <1 given>
。感谢所有的帮助,如果我在这里遗漏了一些基本方面,请道歉。
import random
class Horse(object):
def __init__(self, horse_name):
self.horse_name = horse_name
def get_heights(self, starting_height, max_height):
for sh in range(15):
sh1 = random.randint(14, 15)
sh3 = str(sh1)
self.sh3 = starting_height
print starting_height
for mh in range(3):
mh1 = random.randint(1,2)
mh2 = mh1 + sh1
mh3 = str(mh2)
self.mh3 = max_height
print max_height
Horse_Heights = Horse("Secretariat")
Horse_Heights.get_heights
答案 0 :(得分:0)
正如错误所说,函数get_height有3个参数:
def get_heights(self, starting_height, max_height)
所以当你调用这个函数时插入argments:
import random
class Horse(object):
def __init__(self, horse_name):
self.horse_name = horse_name
def get_heights(self, starting_height, max_height):
for sh in range(15):
sh1 = random.randint(14, 15)
sh3 = str(sh1)
self.sh3 = starting_height
print starting_height
for mh in range(3):
mh1 = random.randint(1,2)
mh2 = mh1 + sh1
mh3 = str(mh2)
self.mh3 = max_height
print max_height
Horse_Heights = Horse("Secretariat")
Horse_Heights.get_heights(1,15)