① 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之中想要去使用一個類,那就必須鉛滲去實例化這個類,使用這個類的對象去使用它。