#2018.5.2.python从入门到放弃—语法初探.
#.1.输出你好世界
print("你好世界!")
#.2.判断语句
a = 50
if(a>60):
print("优秀")
elif a<=60:
print("不及格")
#.3.1.while循环语句
i = 0
while (i<3):
print(i)
i+=1
#.3.2.for循环语句
for a in range(0,5):
print("第{}个数为{}".format(a,a))
#.4.定义函数
def Say():
print("最大的数为!")
def Maxwho(x,y):
if x>y:
return x
else:
return y
print(Maxwho(5,9))
Say()
#创建一个类
#首先写类名,然后用构造函数初始化对象,定义方法,实例化
# (创建这个类的对象并调用它的方法?)
class FirstTest:
def __init__(self,name):#构造函数将对象初始化
self.name = name
def SayTest(self): #定义方法
print("父亲发{}".format(self.name))
#F = FirstTest("张三",8000)#实例化
#F.SayTest()#调用
#继承
class SecondTest(FirstTest):
def __init__(self,name):
FirstTest.__init__(self,name)
def secondSay(self):
print("儿子接{}".format(self.name))
S = SecondTest("钱")
S.SayTest()
S.secondSay()
继承还是有点没用明白只是最后修改的没有问题,父类中调用方法,子类中就不能调用了?
2018.10.12父类中的方法子类中可以调用,eat方法,子类中调用,加上people.eat(self),把值传给父类中的方法,这样实现调用并对父类中的方法添加新的功能。
class people:
def __init__(self,name,age):
self.name = name #通过self的方法把这个函数name这个值给前面的name,所以前面的name名称可以变化
self.age = age
def eat(self):
print('父亲发{}'.format(self.name))
def sleep(self):
print('年龄为%s'%self.age)
class Man(people):
def __init__(self,name,age,smoking,car):
self.name = name
self.smoking = smoking
self.age = age
self.car = car
def eat(self):
people.eat(self)
print('儿子接{}'.format(self.name))
def smoker(self):
print('男人开%s抽%s烟'%(self.car,self.smoking))
在继承中基类的构造(__init__()方法)不会被自动调用,它需要在其派生类的构造中亲自专门调用,这句话具体怎么用,明天继续学习。
--------补充----------
class ElectricCar(Car):
"""电动汽车的独特之处"""
def __init__(self, make, model, year):
"""初始化父类的属性"""
super().__init__(make, model, year)
首先是Car类的代码(见)。创建子类时,父类必须包含在当前文件中,且位于子类前面。
在处,我们定义了子类ElectricCar。定义子类时,必须在括号内指定父类的名称。方法__init__()
接受创建Car实例所需的信息(见)。
处的super()是一个特殊函数,帮助Python将父类和子类关联起来。这行代码让Python调用
ElectricCar的父类的方法__init__(),让ElectricCar实例包含父类的所有属性。父类也称为超
类(superclass),名称super因此而得名。
类和函数其实应该理解成,如果类是人这一类,那么函数就是所有人中某个人的行为,吃饭,睡觉走路,所以在使用这个类的时候首先应该实例化,先选定张三,然后再执行函数,比如执行吃饭的方法。