① python如何每次调用函数,实例化一个类
1、定义一个类。
2、定义一个函数,在函数此老内部创建类迹扒帆的实例对象。
3、在函数内部创建的类实例对象需要在函数外部使用,可以姿雹将该对象作为函数返回值返回。
② python定义一个学生类,具体要求如下
#!/usr/bin/python3
# -*- coding:utf-8 -*-
"""
@author:Storm_ck
@file :20200623_01.py
@time :2020/6/23 14:08
"""
"""
定义学生类,姓名、年龄、成绩
"""
class students():
"""学生姓名、年龄、成绩,成绩以数组形式传入"""
def __init__(self, name, age, course):
self.name = name
self.age = age
self.course = course
def get_name(self):
return self.name
# print("学生姓名:{}".format(self.name))
def get_age(self):
return self.age
# print("学生年龄:{}".format(self.age))
def get_course(self):
return sum(self.course)
# print("学生总分:{}".format(sum(self.course)))
if __name__ == "__main__":
stu1 = students('Tom', 16, [69, 88, 98])
print("学生姓名:{}".format(stu1.get_name()))
print("学生年龄:{}".format(stu1.get_age()))
print("学生总分:{}".format(stu1.get_course()))
③ python 类定义
self,作用是绑定,表示对类的实例化对象的绑定。比如实例化你这的Node类,n=Node(),如果方法traverse括号内不加self,当n.traverse()在Python执行则会变成n=traverse(n),然后就会报错。所以在Python里必须加self绑定。
你也可以用其他的,比如其他语言里用this,但都得有这么个参数来占位作为绑定。
[],表示列表的特征符。
那么这里的[self]即是让实例化对象n经过traverse得到的结果或者表达式后再将其转为列表。
比如整形数1,2。当我们用中括号把其包围,[1,2],那么其就成了列表。就这么回事。
还可以这样:int(self),tuple(self)等的。
其实很简单,别看到self就被唬住了。
我建议还是多看看面相对象编程那一快
④ python 类的定义
Python编程中类定义,代码如下:
class<类名>:
<语句>
定义类的专有方法:
__init__构造函数,在生成对象时调用
__del__析构函数,释放对象时使用
__repr__打印,转换
__setitem__按照索引赋值
__getitem__按照索引获取值
__len__获得长度
__cmp__比较运算
__call__函数调用
__add__加运算
__sub__减运算
__mul__乘运算
__div__除运算
__mod__求余运算
__pow__称方
代码如下:
#类定义
classpeople:
#定义基本属性
name=''
age=0
#定义私有属性,私有属性在类外部无法直接进行访问
__weight=0
#定义构造方法
def__init__(self,n,a,w):
self.name=n
self.age=a
self.__weight=w
defspeak(self):
print("%sisspeaking:Iam%dyearsold"%(self.name,self.age))
p=people('tom',10,30)
p.speak()
⑤ python定义一个学生类,包括学号、姓名和出生日期三个属性(数据成员);包括一个用
import datetime
class student:
def __init__(self,Sno,Sname,Sbarthday,Sfaction):
self.Sage = 0
self.Sgarde = '优秀'
self.Sname = Sname
self.Sno = Sno
self.Sbarthday = datetime.datetime.strptime(Sbarthday,"%Y-%m-%d")
self.Sfaction = Sfaction
self.Setage(Sbarthday)
self.SetGarde(Sfaction)
def Setage(self,Sbarthday):
if (datetime.date.today().month - self.Sbarthday.month)>=0:
if (datetime.date.today().day - self.Sbarthday.day)<0 & (datetime.date.today().month - self.Sbarthday.month)==0:
self.Sage = datetime.date.today().year - self.Sbarthday.year -1
else:
self.Sage = datetime.date.today().year - self.Sbarthday.year
else:
self.Sage = datetime.date.today().year - self.Sbarthday.year -1
def SetGarde(self,Sfaction):
if self.Sfaction >= 80:
self.Sgarde = '优秀'
elif self.Sfaction >= 70 & self.Sfaction <80:
self.Sgarde = '良好'
elif self.Sfaction >= 60 & self.Sfaction <70:
self.Sgarde = '及格'
else:
self.Sgarde = '不及格'
text1 = student('2018061','张三','1999-10-27',68)
print("学号:{0} 姓名:{1} 年龄:{2} 分数:{3} 等级:{4}".format(text1.Sno,text1.Sname,text1.Sage,text1.Sfaction,text1.Sgarde))
⑥ python定义一个学生类,包含三个属性
class student():
# 构造函数
# 对当前对象的实例的初始化
def __init__(self, name, age, score):
self.name = name
self.age = age
self.score = score
# isinstance函数判断一个对象是否是一个已知的类型,类似type
def get_name(self):
if isinstance(self.name, str):
return self.name
def get_age(self):
if isinstance(self.age, int):
return self.age
def get_course(self):
a = max(self.score)
if isinstance(a, int):
return a
zm = student('zhangming', 20, [69, 88, 100])
print(zm.get_name())
print(zm.get_age())
print(zm.get_course())
⑦ pythondef里面可以用自己定义的类吗
pythondef里面可以用自枯老己定义的类。pythondef里面用自己定义的类叫做自定义类。Python中定槐败脊义一个类很简单,只需要使用关键词class去声明即可。python之中想要去使用一个类,那就必须铅渗去实例化这个类,使用这个类的对象去使用它。