设为首页收藏本站

Crossin的编程教室

 找回密码
 立即加入
楼主: crossin先生
打印 上一主题 下一主题

【Python 第49课】 面向对象(3)

[复制链接]

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

31#
发表于 2017-8-2 23:14:24 |只看该作者
zbxdjqls 发表于 2017-8-2 19:28
把self关键字可以替换成其他,如毫无意义的DD,TT等。self只是这个参数的一个名字而已。

声明对象内容中的 ...

是的
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

22

积分

新手上路

Rank: 1

32#
发表于 2017-11-5 21:55:58 |只看该作者
看了面对对象前两节课脑子还一团浆糊,现在看了这个例子,大致有一个表层的认识了。
回复

使用道具 举报

2

主题

0

好友

40

积分

新手上路

Rank: 1

33#
发表于 2017-11-9 17:19:44 |只看该作者
class Car(object):
    def __init__(self,speed,distance):
        self.speed = speed
        self.distance = distance
        time = distance / self.speed
        print (time)

car1 = Car(60,100)
car2 = Car(150,100)
car3 = Car(150,200)
回复

使用道具 举报

2

主题

0

好友

60

积分

注册会员

Rank: 2

34#
发表于 2018-2-12 14:30:04 |只看该作者
crossin先生 发表于 2013-12-2 19:06
speed是成员变量,这个类的每个实例都会有一个属于自己的speed
drive是成员函数,它要被这个类的实例所调 ...

为什么不能是distance=0 def drive(self,speed) time=distance/self.distance print time
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

35#
发表于 2018-2-12 22:23:14 |只看该作者
wwyy4ever 发表于 2018-2-12 14:30
为什么不能是distance=0 def drive(self,speed) time=distance/self.distance print time

没明白你的问题
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

2

好友

46

积分

新手上路

Rank: 1

36#
发表于 2018-4-25 18:29:48 |只看该作者
Selvaria 发表于 2017-11-9 17:19
class Car(object):
    def __init__(self,speed,distance):
        self.speed = speed

请问老师@crossin 这位同学的做法是正解吗?我也有此疑问,直接设置两个参数,不是更省事吗,望老师帮忙解答!
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

37#
发表于 2018-4-25 23:14:20 |只看该作者
coolqing 发表于 2018-4-25 18:29
请问老师@crossin 这位同学的做法是正解吗?我也有此疑问,直接设置两个参数,不是更省事吗,望老师帮忙 ...

distance不是汽车的属性
你想啊,每次汽车开的路不是固定的,这样岂不是一辆车只能走同一段路了
(虽然严格来说,speed也不是固定的,但意思你可以理解下)
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

2

好友

46

积分

新手上路

Rank: 1

38#
发表于 2018-4-26 10:46:47 |只看该作者
crossin先生 发表于 2018-4-25 23:14
distance不是汽车的属性
你想啊,每次汽车开的路不是固定的,这样岂不是一辆车只能走同一段路了
(虽然严 ...

还是不太理解,我的意思是说在函数定义时直接定义speed和distance两个参数,这样之后调用函数赋值的时候,不是会更方便些吗?

class Car(object):
    def __init__(self,speed,distance):
        self.speed = speed
        self.distance = distance
        time = distance / self.speed
        print (time)

car1 = Car(60,100)
car2 = Car(150,100)
car3 = Car(150,200)
回复

使用道具 举报

174

主题

45

好友

10万

积分

管理员

Rank: 9Rank: 9Rank: 9

39#
发表于 2018-4-26 13:58:53 |只看该作者
coolqing 发表于 2018-4-26 10:46
还是不太理解,我的意思是说在函数定义时直接定义speed和distance两个参数,这样之后调用函数赋值的时候 ...

你这不叫调用函数,你每次都创建了一个新的对象(新的一辆车),而不是一辆车去行驶不同的距离
#==== Crossin的编程教室 ====#
微信ID:crossincode
网站:http://crossincode.com
回复

使用道具 举报

0

主题

0

好友

130

积分

注册会员

Rank: 2

40#
发表于 2019-10-5 05:42:23 |只看该作者
请问加一位小数点是有什么约定俗成的惯例吗?还是只是个人习惯?
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即加入

QQ|手机版|Archiver|Crossin的编程教室 ( 苏ICP备15063769号  

GMT+8, 2024-4-20 14:08 , Processed in 0.042471 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部