python基礎學習筆記(二)類和物件

2021-08-17 08:29:32 字數 3403 閱讀 9021

class bird(object):

def __init__(self,sound): #magic mehod 前後兩個下劃線 如__add__()

self.sound=sound #__dict__()

print("init sound:",sound)

def chirp(self): #self:該函式可在同一類中被呼叫

print("bird")

def echo(self,n):

for i in range(n):

self.chirp()

class swan(bird): #繼承

move="swin"

edible=true

def chirp(self):

super().chirp() #呼叫父類被覆蓋的方法

print("swan")

summer=bird("emm")

print(summer.sound)

summer.echo(10)

winter=swan("ha")

print(winter.move)

winter.echo(5)

a=[1,2,5,3,5,6]

print(a.count(5)) #記錄5的個數

print(a.index(3)) #從左開始找3的位置

print(a)

a.sort()

print(a)

a.reverse() #逆序

print(a)

a.remove(2)

print(a)

a.insert(0,9) #在位置0插入數字9

print(a)

a.clear()

print(a)

字串是特殊的元組

a="abc bca"

sub="abc"

new_sub="lalala"

str="-"

a.index("c")

a.rindex("c")

a.count(sub)

a.find(sub) #找不到返回-1

a.rfind(sub)

a.index(sub) #找不到報錯

a.rindex(sub)

a.isalnum() #都是字母或數字

a.isalpha()

a.isdigit()

a.istitle() #所有詞的首字母字母都是大寫

a.isspace() #所有字元都是空格

a.islower()

a.isupper()

b=a.split(" ",1) #以空格分割1次,所得字串在乙個表返回

#a.rsplit()

print("b:",b)

print(str.join(a)) #a-b-c- -b-c-a

b=a.replace(sub,new_sub)

print("replace:",b)

b=a.capitalize() #首字母大寫

print("cap:",b)

b=a.swapcase() #大小寫交換

print("swap:",b)

b=a.lower()

print("lowe:",b)

b=a.upper()

print("upper:",b)

b=a.title() #每個單詞首字母大寫

print("title:",b)

b=a.center(20,"*") #******abc bca*******

print(b)

b=a.ljust(20,'*') #abc bca*************

print(b)

dict=

for k in dict.keys():

print(k) #key 如a

print(dict[k])

for v in dict.values():

print(v) #value 如1

for k,v in dict.items():

print(k,v) #k-v 如a 1

dict.clear()            #清空詞典
生成器yield,每次呼叫函式在yield處暫停並返回yield後的值,下一次呼叫繼續

def gen():

a=100

yield a

a=a*2

yield a

yield 100

for i in gen():

print(i)

__next__()類似手動for

exm=iter([1,2,3])

print(exm.__next__())

print(exm.__next__())

print(exm.__next__())

print(exm.__next__()) #stopiteration

class bird(object):

def __call__(self,a):

return a+2

summer = bird()

print(summer(2))

import time

time.sleep(10)

print("wake")

from time import sleep

sleep(10)

print("wake")

給模組重新命名

import time as t

t.sleep(10)

將功能相似的模組放在乙個資料夾中構成模組包,此資料夾中必須有__init__.py,此檔案可以為空,每個物件都有乙個屬性:__name__來記錄模組名字

try:

....

except zerodivision as e: #e代表捕捉到的錯誤型別物件

....

C 學習筆記(二)類和物件基礎

成員函式 注意 兩個冒號 int car size 函式size是car類的成員函式,只能通過物件 物件指標 物件引用才能呼叫。private 私有成員 public 公有成員 protected 保護成員 1 類成員函式的內部可訪問 當前物件和同類其他物件的全部屬性,函式。2 類的成員函式以外可訪...

C Templates學習筆記二 類模板

一 類模板的實現 例項 include include template 類模板宣告部分 同樣可以使用class t為模板引數 class stack template void stack push t const elem templatevoid stack pop elems.pop bac...

C 學習筆記 二 類與物件

四.建立物件的2種方式 類由函式成員和資料成員組成,資料成員一般宣告為私有,私有和保護成員不能通過物件直接訪問。但是可以通過函式成員對私有資料成員進行操縱。訪問限定符 access specifier 有三種 例子 includeusing namespace std class cgoods ma...