内射老阿姨1区2区3区4区_久久精品人人做人人爽电影蜜月_久久国产精品亚洲77777_99精品又大又爽又粗少妇毛片

python中方法與函數(shù) Python中函數(shù)的用法

python方法和函數(shù)的區(qū)別

這只是在 python3 中才有的區(qū)分,python2 中全部稱(chēng)為方法。

創(chuàng)新互聯(lián)公司是一家專(zhuān)業(yè)提供桐鄉(xiāng)企業(yè)網(wǎng)站建設(shè),專(zhuān)注與成都網(wǎng)站設(shè)計(jì)、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、H5技術(shù)、小程序制作等業(yè)務(wù)。10年已為桐鄉(xiāng)眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專(zhuān)業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。

最大的區(qū)別是參數(shù)的傳遞參數(shù),方法是自動(dòng)傳參self,函數(shù)是主動(dòng)傳參

python 方法和函數(shù)的區(qū)別

在Python中,對(duì)這兩個(gè)東西有明確的規(guī)定:

函數(shù)function —— A series of statements which returns some value to a caller. It can also be passed zero or more arguments which may be used in the execution of the body.

方法method —— A function which is defined inside a class body. If called as an attribute of an instance of that class, the method will get the instance object as its first argument (which is usually called self).

從定義的角度上看,我們知道函數(shù)(function)就相當(dāng)于一個(gè)數(shù)學(xué)公式,它理論上不與其它東西關(guān)系,它只需要相關(guān)的參數(shù)就可以。所以普通的在module中定義的稱(chēng)謂函數(shù)是很有道理的。

那么方法的意思就很明確了,它是與某個(gè)對(duì)象相互關(guān)聯(lián)的,也就是說(shuō)它的實(shí)現(xiàn)與某個(gè)對(duì)象有關(guān)聯(lián)關(guān)系。這就是方法。雖然它的定義方式和函數(shù)是一樣的。也就是說(shuō),在Class定義的函數(shù)就是方法。

從上面的角度看似乎很有道理。

def fun():

pass

type(fun)

class 'function' #沒(méi)有問(wèn)題

class Cla():

def fun():

pass

@classmethod

def fun1(cls):

pass

@staticmethod

def fun2():

pass

i=Cla()

Cla.fun.__class__

class 'function' #為什么還是函數(shù)

i.fun.__class__ #這個(gè)還像話

class 'method'

type(Cla.fun1)

class 'method' #這里又是方法

type(i.fun1)

class 'method'#這里仍然是方法

type(Cla.fun2)

class 'function' #這里卻是函數(shù)

type(i.fun2)

class 'function'#這里卻是函數(shù)

事實(shí)上,上面的結(jié)果是可以解釋的:

1,普通方法(老版中直接就是"instancemethod")在module中與在Class中定義的普通函數(shù),從其本身而言是沒(méi)有什么區(qū)別的,他們都是對(duì)象函數(shù)屬性。 之所以會(huì)被說(shuō)在Class中的定義的函數(shù)被稱(chēng)為方法,是因?yàn)樗緛?lái)就是面向?qū)?lái)的實(shí)例對(duì)象的,其實(shí)他們就是實(shí)例方法,這些方法是與實(shí)例相聯(lián)系的(從實(shí)例出發(fā)訪問(wèn)該函數(shù)會(huì)自動(dòng)賦值)。所以你從Class訪問(wèn)仍然是一個(gè)函數(shù)

2,類(lèi)方法("classmethod"),因?yàn)轭?lèi)同樣是對(duì)象,所以如果函數(shù)與類(lèi)進(jìn)行聯(lián)系了話(與實(shí)例方法一樣的模式)那么就能夠這么說(shuō)了!

3,靜態(tài)方法,雖然定義在內(nèi)部,并且也較方法,但是卻不與任何對(duì)象聯(lián)系,與從類(lèi)訪問(wèn)方法是一樣的,他們?nèi)匀皇呛瘮?shù)。

這樣看來(lái)上面的定義可以改改了:

函數(shù)的定義自然不變。

方法的定義可以是這樣的,與某個(gè)對(duì)象進(jìn)行綁定使用的函數(shù)。注意哦。綁定不是指" . "這個(gè)符號(hào),這個(gè)符號(hào)說(shuō)實(shí)在的只有域名的作用。綁定在這里是指,會(huì)默認(rèn)賦值該綁定的對(duì)象。

python基礎(chǔ):內(nèi)置函數(shù)、方法、轉(zhuǎn)義字符大全

在寫(xiě)python程序時(shí),常能用到一些函數(shù)和方法,總結(jié)一下,保存起來(lái),方便查詢(xún)。

一、內(nèi)置函數(shù)

# abs()獲取數(shù)字絕對(duì)值

# chr(i)數(shù)字轉(zhuǎn)換為字符類(lèi)型

# divmod() 獲取兩個(gè)數(shù)值的商和余數(shù)

# enumerate() 將可遍歷序列組合為索引序列

# float()轉(zhuǎn)換為浮點(diǎn)數(shù)

# format() 格式化字符串

# int()轉(zhuǎn)換為整數(shù)?

# input() 接受用戶(hù)輸入內(nèi)容

# len() 計(jì)算元素個(gè)數(shù)

# max() 返回最大值

# min() 返回最小值

# math.ceil() 返回指定數(shù)值的上舍整數(shù)

# open()打開(kāi)文件并返回文件對(duì)象

# pow() 冪運(yùn)算

# print()打印輸出?

# range() 生成器

# reversed()反轉(zhuǎn)所有元素

# round()四舍五入求值

# sorted()對(duì)可迭代對(duì)象進(jìn)行排序?

# str() 轉(zhuǎn)換為字符串

# sum() 求和

# set() 創(chuàng)建集合

# tuple() 將序列轉(zhuǎn)換為元組

# zip()將可迭代對(duì)象打包成元組

二、方法

# append() 添加列表元素

# capitalize()首字母轉(zhuǎn)換為大寫(xiě)?

# count()字符出現(xiàn)次數(shù)

# close() 關(guān)閉文件

# decode() 解碼字符串

# dict.keys() 獲取字典所有的鍵

# find()字符串首次出現(xiàn)的索引

# f.read() 讀取文件內(nèi)容

# dict.update()更新字典

# dict.items() 獲取字典鍵/值對(duì)

# dict.get() 返回指定鍵的值

# encode() 編碼字符串

# list.sort() 排序列表元素

# index() 元素首次出現(xiàn)的索引

# isdigit() 判斷字符串是否只由數(shù)字組成

# isupper() 是否所有字母都為大寫(xiě)

# isnum() 判斷字符串是否由字母和數(shù)字組成

# islower() 是否所有字母都為小寫(xiě)

# isdecimal() 檢查字符串是否只包含十進(jìn)制字符

# isalpha() 檢測(cè)字符串是否為純字母

# random.shuffle()隨機(jī)排序

# random.sample()返回?zé)o重復(fù)隨機(jī)數(shù)列表

# random.choice() 返回一個(gè)隨機(jī)元素

# random.randint() 生成指定范圍的隨機(jī)整數(shù)

# random.randrange() 生成指定范圍的指定遞增基數(shù)隨機(jī)整數(shù)

# pop() 刪除列表中的元素

# remove()刪除列表中的指定元素

# strip()去除空格

# lstrip()去除左側(cè)空格

# rstrip() 去除右側(cè)空格

# readline() 讀取單行內(nèi)容

# root.after() Tkinter中等待一段時(shí)間后再執(zhí)行命令

# str.isnumeric() 驗(yàn)證字符串是否為數(shù)字(適用于Unicode)

# split()分割字符串

# ord() 將字符轉(zhuǎn)換為整數(shù)

# replace() 字符串替換

# ljust() 左對(duì)齊填充

# rjust() 左對(duì)齊填充

# readlines() 讀取所有行內(nèi)容

# datetime.datetime.now() 返回指定時(shí)區(qū)的本地日期時(shí)間

# datetime.datetime.today() 獲取當(dāng)前本地日期的date對(duì)象

# datetime.utcnow() 返回當(dāng)前UTC時(shí)間的datetime對(duì)象

# time.strptime()把時(shí)間字符串解析為元組

# time.time()返回當(dāng)前時(shí)間的時(shí)間戳

# time.sleep()暫停指定秒數(shù)

# time.strftime() 返回指定格式的日期字符串

# time.mktime() 接收時(shí)間元組并返回時(shí)間戳

# os.getcwd() 獲取當(dāng)前工作目錄

# os.listdir() 獲取指定路徑下的目錄和文件列表

# os.makedirs() 遞歸創(chuàng)建目錄

# os.rename() 重命名目錄或文件

# os.path.exists() 判斷路徑是否存在

# upper() 全部轉(zhuǎn)換為大寫(xiě)字母

# lower()? 全部轉(zhuǎn)換為小寫(xiě)字母

# sys.stdout.write() 標(biāo)準(zhǔn)輸出打印

# sys.stdout.flush()刷新輸出?

# shutil.copy() 復(fù)制單個(gè)文件到另一文件或目錄

# write() 寫(xiě)入文件內(nèi)容

# winsound.Beep() 打開(kāi)電腦揚(yáng)聲器

# zfill() 在字符串前面填充0

三、循環(huán)語(yǔ)句

# break終止當(dāng)前循環(huán)

# continue 終止本循環(huán)進(jìn)入下一次循環(huán)

# with open() as file 以with語(yǔ)句打開(kāi)文件(數(shù)據(jù)保存)

四、轉(zhuǎn)義字符

\ 行尾續(xù)行符

\' 單引號(hào)?

\'' 雙引號(hào)

\a 響鈴

\e 轉(zhuǎn)義

\n 換行

\t 橫向制表符

\f 換頁(yè)

\xyy 十六進(jìn)制yy代表的字符

\\反斜杠符號(hào)

\b 退格

\000 空

\v 縱向制表符

\r 回車(chē)

\0yy 八進(jìn)制yy代表的字符

\other 其他的字符以普通格式輸出

文章標(biāo)題:python中方法與函數(shù) Python中函數(shù)的用法
轉(zhuǎn)載來(lái)于:http://www.rwnh.cn/article48/doocehp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供營(yíng)銷(xiāo)型網(wǎng)站建設(shè)關(guān)鍵詞優(yōu)化定制網(wǎng)站、服務(wù)器托管、網(wǎng)站建設(shè)網(wǎng)站策劃

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
南康市| 闸北区| 浙江省| 连城县| 郓城县| 台中县| 深泽县| 丽江市| 轮台县| 定边县| 嘉定区| 卢氏县| 称多县| 霍邱县| 吉安市| 汉源县| 阳新县| 余姚市| 翁源县| 安新县| 常州市| 射阳县| 丹江口市| 崇左市| 得荣县| 民乐县| 屯留县| 龙口市| 麻城市| 广元市| 陇西县| 荣成市| 同仁县| 壤塘县| 内江市| 西峡县| 绿春县| 镇雄县| 临沧市| 北碚区| 屏东市|