1、萬物皆物件
2、物件:用來描述客觀事物的乙個 實體 ,由一組 屬性 和 方法 構成
3、屬性:物件具有的各種特徵,每個物件的每個屬性都有特定值
4、方法:物件執行的操作
5、類:物件的分類,分類就是認識物件的過程
很多人學習蟒蛇,不知道從何學起。物件導向設計的規則很多人學習尋找python,掌握了基本語法之後,不知道在**案例上手。
很多已經可能知道案例的人,卻不怎麼去學習更多高深的知識。
qq群:
101677771歡迎加入,一起討論學習
1、圖書類: 屬性:圖書編號、書名、書的作者、上架日期、借出狀態
功能(方法):借出和歸還
2、銀行卡類: 屬性:卡號、銀行卡名稱、密碼、姓名、餘額
方法:登入、存款、取款
# 思路:
# 定義類 --> 人類
# 編寫類的屬性:姓名、年齡、id(身份證號)、手機號
# 編寫類的方法:吃、喝、玩、睡、上班
class person:
# 編寫屬性(變數)
name = "楊冪"
age = 30
gender = '女'
# 我不想用指定屬性,我想自己建立姓名
def set_param(self, name): # age、gender一樣操作
self.name = name
print(f'姓名:')
# 如屬性很多,那就很麻煩,我們可以使用 def __init__()去構造
# 編寫方法(函式),無參
def eat(self):
print('eating')
def drink(self):
print('drinking')
def play(self):
print('playing')
def sleep(self):
print('sleeping')
@classmethod
def work(self):
print('working')
# 物件的構造
ym = person()
# 呼叫方法
ym.sleep()
ym.work()
zs = person()
zs.set_param('張三')
# 類訪問方法,需要新增乙個裝飾器@classmethod
person.eat()
# def __init__() 去構造屬性
class person:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
# 編寫方法(函式),有參
def eat(self, food):
print(f'在吃')
def drink(self, sthing):
print(f'在喝')
def play(self):
print(f'在玩')
def sleep(self):
print(f'在睡覺')
def work(self):
print(f'正在工作')
def info(self): # 輸出資訊
print("該人的資訊:", self.name, self.age, self.gender)
# 構造物件輸出資訊
lihaoran = person(name='李浩然', age=32, gender='男')
# 呼叫方法
"""封裝(屬性私有化)"""
class student:
def __init__(self, name, age, xh, id, address):
self.name = name # 預設公共屬性(允許外界讀取+修改)
self.age = age # 預設公共屬性(允許外界讀取+修改)
self.xh = xh
self.__id = id # 私有屬性(不允許外界讀取+修改)
self.__address = address # 私有屬性(不允許外界讀取+修改)
# 私有屬性可以被檢視,但是不能被修改 ---> get方法
def getid(self):
return self.__id
def setaddress(self, newadress):
self.__address = newadress
def info(self):
print('學生的基本資訊:', self.name, self.age, self.xh, self.__id, self.__address)
zhangsan = student('tom', 18, '001', '340104555555555555', '南京')
# 私有屬性(不允許外界讀取+修改),如果想檢視get方法
# print(zhangsan.id) # 沒有getid-->報錯attributeerror: 'student' object has no attribute 'id'
read_student_id = zhangsan.getid()
print(f'檢視張三id:')
zhangsan.info()
zhangsan.setaddress("合肥")
print(f'在吃')
def drink(self, sthing):
print(f'在喝')
def play(self):
print(f'在玩')
def sleep(self):
print(f'在睡覺')
# 繼承
class dog(animal):
def __init__(self, name, color, age):
super().__init__(name, color) # super()呼叫父類物件
self.age = age # 屬性有個性(構造屬性重寫)
def kaijia(self):
print(f"看家")
hashiqi = dog('哈士奇', '黑白', 6)
hashiqi.eat('骨頭')
# 多型 方法上個性(構造方法重寫) 獨特個性
hashiqi.kaijia()
class cat(animal):
def __init__(self, name, color):
super().__init__(name, color) # super()呼叫父類物件
cat = cat('波斯貓', 'red')
cat.eat('魚')
# cat.kaijia() 因為貓不會看家,這是狗的獨特個性
一文讓你熟練掌握Linux的ncat nc 命令
ncat或者說nc是一款功能類似cat的工具,但是是用於網路的。它是一款擁有多種功能的cli工具,可以用來在網路上讀 寫以及重定向資料。它被設計成可以被指令碼或其他程式呼叫的可靠的後端工具。同時由於它能建立任意所需的連線,因此也是乙個很好的網路除錯工具。ncat nc既是乙個埠掃瞄工具,也是一款安全...
一文掌握 TensorFlow 基礎
在後面的課程中我們將主要使用 tensorflow 來實現各種模型的應用,所以在本節我們先來看一下 tensorflow 的基礎知識點。tensorflow 是乙個深度學習庫,由 google 開源,可以對定義在 tensor 張量 上的函式自動求導。tensor 張量 意味著 n 維陣列,flow...
用案例讓你一文搞懂python網路爬蟲
很久以前寫了一篇爬蟲的文章,把它放在csdn上 livan1234 沒想到點選量竟然暴漲,足以看到大家在資料獲取方面的需求,爬蟲技術現在已經非常普遍,其用途也非常廣泛,很多牛人在各個領域做過相關的嘗試,比如 1 爬取汽車之家資料,利用論壇發言的抓取以及nlp,對各種車型的車主做畫像。2 抓取各大電商...