|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
- class Turtle:
- def __init__(self, x):
- self.num = x
- class Fish:
- def __init__(self, x):
- self.num = x
- class Pool:
- def __init__(self, x, y):
- self.turtle = Turtle(x)
- self.fish = Fish(y)
- def print_num(self):
- print('水池里一共有%d只乌龟,%d条小鱼' % (self.turtle.num, self.fish.num))
复制代码
我想知道,这里的 self.turtle.num 和 self.fish.num 中后面加的 num 是什么?这个 num 是python 中的内置函数么?还是怎么样的 我试着不加num 会报错的
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
p.print_num()
File "C:\Users\lishaoye\Desktop\4-29-1.py", line 15, in print_num
print('水池里一共有%d只乌龟,%d条小鱼' % (self.turtle, self.fish))
TypeError: %d format: a number is required, not Turtle
翻译了一下,类型错误:%d格式:一个数字是必需的,而不是乌龟
代码没错:
print('水池里一共有%d只乌龟,%d条小鱼' % (self.turtle.number, self.fish.number)#漏了括号
self.turtle与self.fish是Turtle和Fish的对象。对象访问属性要通过 “.”来访问
故没加.num就会报错
|
|