python中的函數、類和對象、模塊和包都是啥意思?

python中的函數、類、對象、包都是啥意思?
1、函數——重複的事情不做兩次
函數還是比較好理解的吧,數學中就學到過函數,就是用來解決某一些問題的過程。爲啥要寫函數?首先是方便代碼重用,另外寫函數方便把一些大的問題分解成多個小問題來解決,是一種分治的思想。
定義函數的格式:

def  functionName(參數1,參數2,參數3):
       代碼

例1:這個是一個沒有任何參數的函數,調用後就打印“hello”,

def show():
    print("hello")
show()#調用函數

例2:返回一個數的絕對值

def f3(x):
    '''返回一個數的絕對值'''
    if x<0: x=-x
    return x

當然上面這個函數是絕對沒有必要去寫的,直接就可以調用python的內置函數。
關於參數:
(1)實參、形參以及默認參數:形參就像上面例子中的x,在沒有調用之前沒有實際的值,實參就是我調用函數的時候傳遞給函數的變量,默認參數就是當我調用一個有參數的函數但是沒有傳遞給他實參的時候的默認參數值。

def milktea(x,y='mango'):
    '''買一本x元,y口味的奶茶'''
    #x,y就是形參
    #y有一個默認的參數值mango,調用函數的之後不給y的值也默認輸出y
    print("我要一份 %d 元的 %s 口味的奶茶"%(x,y))

milktea(10)
#10是實參
milktea(15,'香芋')

運行結果:
在這裏插入圖片描述
(2)參數冗餘:簡單來說就是我的函數只要兩個參數你給我傳了三個就冗餘了,處理方式:用xx來接受其他參數,多餘的參數都會放到xx這個元組中。

def milktea(x,y='mango',*xx):
    '''買一本x元,y口味的奶茶'''
    print("我要一份 %d 元的 %s 口味的奶茶"%(x,y))
    #多餘的參數都會放到xx中,是一個元組
    print('xx:',xx)
milktea(15,'原味','多加珍珠不要奶','另外少放點糖')

運行:
在這裏插入圖片描述
2、模塊和包
python中有很多的模塊,好像裝在盒子裏的積木,用的時候直接取就行。比如像turtle、time等,import後就能夠用。也可以自己寫模塊,定義屬性和方法,使用方式相同。
模塊是一個.py的文件,可以包含函數、類或其他語句,模塊的功能是將複雜的程序功能分類細化,不同功能放在不同腳本,便於維護和重用。

#導入方式:
import 模塊名字
import 模塊名字 as 別名
from 模塊名 import 函數/類名/*

例1:turtle模塊調用

import turtle
'''畫一個正方形'''
for i in range(4):
    turtle.forward(100)
    turtle.right(90)

包是什麼?有多個模塊的時候,爲了方便管理就放在一個包中管理。包就是一個文件夾,其中有一個__init__文件。

3、類和對象——物以類聚
其實世間萬物都有着某種聯繫,我們總是可以衆多事物中找到相似之處,然後對事物進行分類劃分。所謂學習也無非就是在從紛繁的事物中尋找規律。
比如說,生物有很多類,貓狗雞兔人,車有很多類,小汽車、公交車、越野車···,口紅有很多色號····,具有相同屬性的東西我們就可以歸爲一類,這一類有很多共同的屬性,但是屬性卻不完全相同,比如說車有很多種,但是價格相差很多,引擎不同、外形不同、顏色不同等等。這就是類,而對象是就是類的一個實例。
比如說我定義一個車的類,他的屬性有品牌、價格、速度等。他的方法是跑。

class Car:
    '''車的類'''
    color = ''
    speed = 0
    def run(self):
        print("Go Go Go 當前時速:%d"% self.speed)
#BMW是類一個實例就是對象
BMW =Car()
BMW.color='red'
BMW.speed = 120
BMW.run()        
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章