Python: 关于 __init__
本帖最后由 Peteryo01223 于 2021-2-3 09:25 编辑代码:
class Ticket():
def __init__(self, weekend=False, child=False):
self.exp = 100
if weekend:
self.inc = 1.2
else:
self.inc = 1
if child:
self.discount = 0.5
else:
self.discount = 1
def calcPrice(self, num):
return self.exp * self.inc * self.discount * num
>>> adult = Ticket()
>>> child = Ticket(child=True)
>>> print("2个成人 + 1个小孩平日票价为:%.2f" % (adult.calcPrice(2) + child.calcPrice(1)))
2个成人 + 1个小孩平日票价为:250.00
问题:
1. self.exp 和 self.inc 是两个 Fish C 随便命名的变量吗?还是在调用 self 语句的预设用法?
2. 用 self 加上一个英文句号‘ .’ 再加 英文字母的用法,为何变为 self_exp = 100 和 self_inc = 1.2 就报错?
谢谢~ 1,不是,想起什么名就起什么名
2,self. 是在访问这个实例的属性,self_ 就单纯的变成变量了。
建议回去扎实下self用法。 qiuyouzhi 发表于 2021-2-3 09:27
1,不是,想起什么名就起什么名
2,self. 是在访问这个实例的属性,self_ 就单纯的变成变量了。
建议回去 ...
视频讲的很跳跃,对初学者来说十分费解。水平高,和解释得清楚,是两回事儿。实在看不懂,才在这里提问。 1. exp, inc 是随便命名,但是不建议 ”随便“ 命名, self 是关键字
2. ". " 是大部分编程语言约定俗称的 符号,python里用来调用对象的函数和属性等
Peteryo01223 发表于 2021-2-3 09:31
视频讲的很跳跃,对初学者来说十分费解。水平高,和解释得清楚,是两回事儿。实在看不懂,才在这里提问。
?跳跃吗
我觉得还好8
学习速度不要太快,扎实了基础再继续 °蓝鲤歌蓝 发表于 2021-2-3 09:38
1. exp, inc 是随便命名,但是不建议 ”随便“ 命名, self 是关键字
2. ". " 是大部分编程语言约定俗称的 ...
谢谢 学习
页:
[1]