python第七節(jié)函數(shù) python函數(shù)總結(jié)

python里面的函數(shù)是什么意思?

1、Python中的函數(shù)是什么意思?

創(chuàng)新互聯(lián)專注于橋西企業(yè)網(wǎng)站建設(shè),自適應(yīng)網(wǎng)站建設(shè),商城網(wǎng)站定制開發(fā)。橋西網(wǎng)站建設(shè)公司,為橋西等地區(qū)提供建站服務(wù)。全流程按需求定制開發(fā),專業(yè)設(shè)計,全程項目跟蹤,創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

如果你需要實現(xiàn)一個功能,那么你需要用代碼來實現(xiàn)。

那么Python中為你設(shè)置了一些固定功能的代碼,實現(xiàn)一個功能的這些代碼就是一個函數(shù)。

簡而言之,函數(shù)就是實現(xiàn)特有的功能,你可以直接調(diào)用的內(nèi)建函數(shù)。

2、函數(shù)舉例

Python內(nèi)置了許多函數(shù),我們可以直接調(diào)用。

比如:abs函數(shù),是用來求絕對值的。

如下圖所示,a就是輸入,b就是經(jīng)過函數(shù)處理后得到的輸出。

具體如何求絕對值?我們不管,abs幫我們做好了,我們只要把他需要的值給他就行了

python內(nèi)置函數(shù)有哪些

python常見的內(nèi)置函數(shù)有:

1. abs()函數(shù)返回數(shù)字的絕對值。

2. all() 函數(shù)用于判斷給定的參數(shù)中的所有元素是否都為 TRUE,如果是返回 True,否則返回 False。元素除了是 0、空、None、False 外都算 True;空元組、空列表返回值為True。

3. any() 函數(shù)用于判斷給定的參數(shù)是否全部為False,是則返回False,如果有一個為True,則返回True。 元素除了是 0、空、False外都算 TRUE。

4. bin()函數(shù)返回一個整數(shù)int或者長整數(shù)long int的二進(jìn)制表示。

5. bool() 函數(shù)用于將給定參數(shù)轉(zhuǎn)換為布爾類型,如果參數(shù)不為空或不為0,返回True;參數(shù)為0或沒有參數(shù),返回False。

6. bytearray()方法返回一個新字節(jié)數(shù)組。這個數(shù)組里的元素是可變的,并且每個元素的值范圍: 0 = x 256(即0-255)。即bytearray()是可修改的二進(jìn)制字節(jié)格式。

7. callable()函數(shù)用于檢查一個對象是否可調(diào)用的。對于函數(shù)、方法、lambda函式、類以及實現(xiàn)了 __call__ 方法的類實例, 它都返回 True。(可以加括號的都可以調(diào)用)

8. chr()函數(shù)用一個范圍在range(256)內(nèi)(即0~255)的整數(shù)作參數(shù),返回一個對應(yīng)的ASCII數(shù)值。

9. dict()函數(shù)用來將元組/列表轉(zhuǎn)換為字典格式。

10. dir()函數(shù)不帶參數(shù)時,返回當(dāng)前范圍內(nèi)的變量、方法和定義的類型列表;帶參數(shù)時,返回參數(shù)的屬性、方法列表。

擴(kuò)展資料:

如何查看python3.6的內(nèi)置函數(shù)?

1、首先先打開python自帶的集成開發(fā)環(huán)境IDLE;

2、然后我們直接輸入"dir(__builtins__)",需要注意的是builtins左右的下劃線都是兩個;

3、回車之后我們就可以看到python所有的內(nèi)置函數(shù);

4、接下來我們學(xué)習(xí)第二種查看python內(nèi)置函數(shù)的方法,我們直接在IDLE中輸入"import builtins",然后輸入"dir(builtins)";

5、然后回車,同樣的這個方法也可以得到所有的python內(nèi)置的函數(shù);

6、這里我們可以使用python內(nèi)置函數(shù)len()來查看python內(nèi)置函數(shù)的個數(shù),這里我們直接輸入"len(dir(builtins))";

7、回車之后我們可以看到系統(tǒng)返回值153,說明我們現(xiàn)在這個版本中有153個內(nèi)置函數(shù);

8、最后我們介紹一個比較有用的內(nèi)置函數(shù)"help",python內(nèi)置函數(shù)有一百多個,我們當(dāng)然不能記住所有的函數(shù),這里python提供了一個"help"函數(shù),我們來看一個例子一起來體會一下help函數(shù)的用法,這里我們直接輸入"help(len)",然后回車,會看到系統(tǒng)給我們對于內(nèi)置函數(shù)"len"的解釋,當(dāng)然對于其他函數(shù)可能會有更加詳細(xì)的解釋以及用法提示。

python內(nèi)建函數(shù)

其實安裝python包會自帶一個有問號標(biāo)示“?”的"Python Manuals"可以仔細(xì)閱讀一下,也可作幫助文檔的。

介紹Python的內(nèi)建函數(shù)和異常.許多內(nèi)建函數(shù)的細(xì)節(jié)及特性可以在這里找到.

內(nèi)建函數(shù)

本節(jié)介紹的函數(shù)在解釋器中總是可用的,他們被包含在 __builtin__ 模塊里.另外每個模塊的 __builtins__ 屬性經(jīng)常指的是這個模塊(除了當(dāng)在restricted execution環(huán)境下運行時).

_(下劃線)

默認(rèn)情況下,變量 _ 用于在交互模式下表示最近一個表達(dá)式的運行結(jié)果.

參閱 sys.displayhook (118)

__import__(name [, globals [, locals [, fromlist]]])

import語句通過調(diào)用這個函數(shù)來導(dǎo)入模塊. name是包含模塊名字的字符串, globals是一個可選的定義全局名稱空間的字典, locals是定義局部名稱空間的字典, fromlist是from語句目標(biāo)的列表.例如, import spam語句會調(diào)用__import__('spam', globals(), locals(), []) ,而from spam import foo 語句會調(diào)用 __import__('spam', globals(), locals(), ['foo']). 如果模塊名在包名字之后(如foo.bar)而且fromlist為空時,就返回對應(yīng)的模塊對象.如果fromlist不為空,則只會返回最頂級的包.

這個函數(shù)是一個低等級的模塊載入接口.它并不執(zhí)行import語句的所有步驟(通常情況下局部名稱空間并不會隨模塊中包含對象的名稱引用的改變而改變.這個函數(shù)可以由用戶來重新定義,這樣為import語句加入新的行為.默認(rèn)的執(zhí)行并不會檢查locals參數(shù),而globals只用于決定包的內(nèi)容(這些參數(shù)可以使 __import__()能夠完整地訪問全局和局部名稱空間)

abs(x)

返回x的絕對值

apply(func [, args [, keywords]])

對可調(diào)用對象func執(zhí)行函數(shù)調(diào)用. args是一個包含固定位置參數(shù)的元組, keywords是包含關(guān)鍵參數(shù)的字典. apply()函數(shù)也可以寫做func(*args ,**keywords ).

buffer(sequence [, offset [, size]])

創(chuàng)建一個新的緩沖器對象.緩沖器通常是一個序列(如字符串)的字節(jié)導(dǎo)向序列.緩沖器和字符串在許多地方是相同的,但是它不支持字符串方法,而且也不能使用string模塊的函數(shù).

callable(object)

當(dāng)object為可調(diào)用對象時返回True,否則返回False

chr(i)

將一個0到255的整數(shù)轉(zhuǎn)換為一個字符.

cmp(x,y)

比較x和y. x y返回負(fù)數(shù); x== y返回零; x y返回整數(shù).它可以比較任意兩個對象并返回結(jié)果,即使有時候?qū)ο蟮谋容^豪無意義(例如比較文件對象).在某些環(huán)境下,這樣的比較會引發(fā)異常.

coerce(x,y)

將x和y值轉(zhuǎn)換為同一個數(shù)值類型并作為一個元組返回.(第三章,類型和對象)

compile(string, filename, kind)

使用exec()或eval()將字符串編譯為代碼對象. filename is a string containing the name of the file in which the string was defined. kind為'exec'時代表一個表達(dá)式的序列, 'eval'代表一個表達(dá)式, 'single'代表一個運行語句.

complex(real [, imag])

創(chuàng)建一個復(fù)數(shù)

delattr(object, attr)

刪除對象的一個屬性, attr是一個字符串.與 del object.attr相同

dir([object])

返回包含屬性名稱的列表.它們來自對象的 __dict__, __methods__,以及 __members__ 屬性.如果沒有傳遞給它參數(shù),則會返回當(dāng)前的local symbol table

divmod(a,b)

返回一個包含商和余數(shù)的元組.對于整數(shù),將返回(a / b , a % b ),對于浮點數(shù),將返回(math.floor(a / b ), a % b )

eval(expr [, globals [, locals]])

計算一個表達(dá)式的值. expr是一個字符串或由compile()創(chuàng)建的一個代碼對象. globals和locals為操作定義的全局和局部名稱空間,當(dāng)省略時,表達(dá)式將在調(diào)用時的名稱空間計算.

execfile(filename [, globals [, locals]])

運行文件filename中的語句. globals和locals定義了文件運行的全局和局部名稱空間,當(dāng)省略時,文件將在調(diào)用時的名稱空間運行.這個函數(shù)不能在一個函數(shù)主體里使用,因為它與內(nèi)嵌范圍不相容.

filter(function, list)

使用func()函數(shù)來過濾s中的元素.使func返回值為false的元素被丟棄,其它的存入filter函數(shù)返回的列表中.如果function是None,則list中值為False的元素就被刪除.

float(x)

將x轉(zhuǎn)換為浮點數(shù)

getattr(object, name [, default])

返回一個對象的屬性. name是一個字符串. default是一個可選的值,代表當(dāng)沒有這個屬性時返回的值. 與 object.name 結(jié)果相同

globals()

返回一個與全局名稱空間對應(yīng)的字典

hasattr(object, name)

返回object是否有name屬性,布爾值

hash(object)

返回一個對象的整數(shù)哈希值(如果可能).兩個相等對象的哈希值是相同的.模塊沒有定義一個哈希值.

hex(x)

將一個整數(shù)或長整數(shù)轉(zhuǎn)換為一個十六進(jìn)制的字符串

id(object)

返回一個對象的整數(shù)id

input([prompt])

相當(dāng)于eval(raw_input(prompt ))

int(x [, base])

將一個數(shù)字或字符串轉(zhuǎn)換為整數(shù). 可選參數(shù)base代表從字符串轉(zhuǎn)換時的基礎(chǔ)/根據(jù)

intern(string)

Checks to see whether string is contained in an internal table of strings. If found, a copy of the internal string is returned. If not, string is added to the internal table and returned. This function is primarily used to get better performance in operations involving dictionary lookups. Interned strings are never garbage-collected. Not applicable to Unicode strings.

isinstance(object, classobj)

檢查object是否是classobj的事例或子類.也可用于檢查類型

issubclass(class1, class2)

檢查class1是否是class2的子類(派生類)

注意: issubclass(A , A )返回True

len(s)

返回序列s中包含的條目數(shù)目

list(s)

返回一個包含序列s中條目的新列表

locals()

返回一個與調(diào)用時局部名稱空間相對應(yīng)的字典

long(x [, base])

將一個數(shù)字或字符串轉(zhuǎn)換為長整數(shù),可選參數(shù)base代表從字符串轉(zhuǎn)換時的基礎(chǔ)/根據(jù)

map(function, list, ...)

將序列l(wèi)ist中的每個元素傳遞給function函數(shù)做參數(shù),函數(shù)的返回值組成列表并返回.如果提供給多個列表,則函數(shù)應(yīng)包含有多個參數(shù),每個參數(shù)從不同的列表獲得.如果函數(shù)為None,則默認(rèn)為 identity function(?身份函數(shù)).如果None映射到多個列表,則返回一個包含元組的列表,元組的每個元素分別來自各個列表.如果有必要,短的列表將使用None來擴(kuò)充到與最長列表長度相等. map可以使用list comprehensions 來代替.例如map(function , alist ),可以使用[function (x) for x in alist ]來代替

參閱 zip (105).

max(s [, args, ...])

單個參數(shù)時,返回序列s中的最大值.多個參數(shù)時,返回值最大的參數(shù)

min(s [, args, ...])

單個參數(shù)時,返回序列s中的最小值.多個參數(shù)時,返回值最小的參數(shù)

oct(x)

將一個整數(shù)或者長整數(shù)轉(zhuǎn)換為八進(jìn)制字符串

open(filename [, mode [, bufsize]])

打開文件filename并返回一個文件對象(第十章,運行環(huán)境). mode代表文件打開的模式. 'r' 表示讀, 'w' 表示寫, 'a' 表示在文件末尾添加內(nèi)容. 還有一種更新模式,你只要在讀寫模式后增加一個'+'就可以使用這種模式,如'r+' 或 'w+'.當(dāng)一個文件以更新模式打開,你就可以對這個文件進(jìn)行讀寫操作.只要在任何讀取操作之前刷新所有的輸出緩沖就不會有問題.如果一個文件以 'w+' 模式打開,它的長度就度截為 0.當(dāng)mode省略時,將會使用'w'模式.bufsize參數(shù)指定了緩沖行為, 0代表無緩沖,1代表行緩沖,其他正數(shù)代表一個大約的字節(jié)緩沖器大小,負(fù)數(shù)代表使用系統(tǒng)默認(rèn)緩沖器大小(也是默認(rèn)行為)

ord(c)

返回單個字符c的整數(shù)順序值.普通字符返回[0,255]中的一個值,Unicode字符返回 [0,65535]中的一個值

pow(x, y [, z])

返回x ** y ,如果z存在返回(x ** y ) % z

range([start,] stop [, step])

返回一個從start到stop的整數(shù)序列, step代表步進(jìn),默認(rèn)值為1. start默認(rèn)值為0.負(fù)數(shù)的step可以創(chuàng)建一個遞減的整數(shù)序列

參閱xrange (105)

raw_input([prompt])

從標(biāo)準(zhǔn)輸入(sys.stdin)中讀取一行,并把它作為字符串返回.如果提供了prompt,它將首先打印到標(biāo)準(zhǔn)輸出(sys.stdout).當(dāng)讀取到一個EOF時,就會引發(fā)一個EOFError異常.如果readline模塊被導(dǎo)入,那么這個函數(shù)會使用它來提供更高級的功能

reduce(func, seq [, initializer])

函數(shù)從一個序列收集信息,然后只返回一個值(例如求和,最大值,等).它首先以序列的前兩個元素調(diào)用函數(shù),再將返回值和第三個參數(shù)作為參數(shù)調(diào)用函數(shù),依次執(zhí)行下去,返回最終的值. func函數(shù)有且只有兩個參數(shù).在seq為空時,將使用初始值initializer.

reload(module)

重新導(dǎo)入一個已經(jīng)導(dǎo)入的模塊. module必須是一個已經(jīng)存在的模塊對象.一般情況下并不鼓勵使用這個函數(shù),除了在調(diào)試的時候.

當(dāng)一個模塊重導(dǎo)入時,定義它的全局名稱空間的字典依然存在.Thus, definitions in the old module that aren’t part of the newly reloaded module are retained.模塊可以利用這個來檢查他們是否已經(jīng)被導(dǎo)入.

重導(dǎo)入一個使用C編寫的模塊通常是不合法的

If any other modules have imported this module by using the from statement, they’ll continue to use the definitions in the previously imported module. This problem can be avoided by either reissuing the from statement after a module has been reloaded or using fully qualified names such as module.name .

如果有使用以前模塊中類創(chuàng)建的實例,它們將繼續(xù)使用以前的模塊

repr(object)

返回一個對象的標(biāo)準(zhǔn)字符串表示.與向后的引號 `object` 相同.大多數(shù)情況下,返回的字符串可以使用eval()來再次創(chuàng)建這個對象.

round(x [, n])

Returns the result of rounding the floating-point number x to the closest multiple of 10 to the power minus n . If n is omitted, it defaults to 0. If two multiples are equally close, rounding is done away from 0 (例如, 0.5 is rounded to 1.0 and -0.5 is rounded to -1.0).

setattr(object, name, value)

設(shè)置一個對象的屬性. name是一個字符串. 相當(dāng)于object.name = value .

slice([start,] stop [, step])

返回一個代表指定數(shù)列中一個整數(shù)的切片對象.切片對象也可以有擴(kuò)展切片操作語句來產(chǎn)生.(第三章,序列和映射方法)

str(object)

返回表示對象的可打印形式的字符串.與print語句產(chǎn)生的字符串相同.

tuple(s)

從序列s中創(chuàng)建一個元組.如果s已經(jīng)是一個元組,則返回s

type(object)

返回object的類型,它是一個types模塊中定義type類型

參閱isinstance (102)

unichr(i)

將一個0到65535的整數(shù)轉(zhuǎn)換為一個Unicode字符

unicode(string [, encoding [, errors]])

將string轉(zhuǎn)換為Unicode字符串. encoding指定了string的數(shù)據(jù)編碼,它被省略時,將使用sys.getdefaultencoding(). errors指定編碼錯誤處理方式.('strict', 'ignore', 或 'replace' .參閱第三章和第九章中有關(guān)Unicode內(nèi)容)

vars([object])

返回object的 symbol table (通常在object的__dict__屬性).如果沒有給它提供參數(shù),則返回對應(yīng)當(dāng)前局部名稱空間的字典.

xrange([start,] stop [, step])

和range函數(shù)相似,但返回的是一個XRangeType對象.它生成一個迭代器,就是只有用那個數(shù)時才臨時通過計算提供值,而不是全部儲存它們.這樣在處理大的數(shù)列時能節(jié)省大量的內(nèi)存.

zip(s1 [, s2 [,..]])

用來將幾個序列組合成一個包含元組的序列,序列中的每個元素t[i ] = (s1[i ], s2[i ], ..., sn[i ]).結(jié)果與最短序列的長度相等.

python 基礎(chǔ)教程

運算

a = 21

b = 10

c = 0

c = a + b

print "1 - c 的值為:", c

c = a - b

print "2 - c 的值為:", c

c = a * b

print "3 - c 的值為:", c

c = a / b

print "4 - c 的值為:", c

c = a % b

print "5 - c 的值為:", c

a = 2

b = 3

c = a**b

print "6 - c 的值為:", c

a = 10

b = 5

c = a//b

print "7 - c 的值為:", c

python比較

a = 21

b = 10

c = 0

if ( a == b ):

print "1 - a 等于 b"

else:

print "1 - a 不等于 b"

if ( a != b ):

print "2 - a 不等于 b"

else:

print "2 - a 等于 b"

if ( a b ):

print "3 - a 不等于 b"

else:

print "3 - a 等于 b"

if ( a b ):

print "4 - a 小于 b"

else:

print "4 - a 大于等于 b"

if ( a b ):

print "5 - a 大于 b"

else:

print "5 - a 小于等于 b"

a = 5

b = 20

if ( a = b ):

print "6 - a 小于等于 b"

else:

print "6 - a 大于 b"

if ( b = a ):

print "7 - b 大于等于 a"

else:

print "7 - b 小于 a"

賦值

a = 21

b = 10

c = 0

c = a + b

print "1 - c 的值為:", c

c += a

print "2 - c 的值為:", c

c *= a

print "3 - c 的值為:", c

c /= a

print "4 - c 的值為:", c

c = 2

c %= a

print "5 - c 的值為:", c

c **= a

print "6 - c 的值為:", c

c //= a

print "7 - c 的值為:", c

邏輯運算符:

a = 10

b = 20

if ( a and b ):

print "1 - 變量 a 和 b 都為 true"

else:

print "1 - 變量 a 和 b 有一個不為 true"

if ( a or b ):

print "2 - 變量 a 和 b 都為 true,或其中一個變量為 true"

else:

print "2 - 變量 a 和 b 都不為 true"

a = 0

if ( a and b ):

print "3 - 變量 a 和 b 都為 true"

else:

print "3 - 變量 a 和 b 有一個不為 true"

if ( a or b ):

print "4 - 變量 a 和 b 都為 true,或其中一個變量為 true"

else:

print "4 - 變量 a 和 b 都不為 true"

if not( a and b ):

print "5 - 變量 a 和 b 都為 false,或其中一個變量為 false"

else:

print "5 - 變量 a 和 b 都為 true"

in,not in

a = 10

b = 20

list = [1, 2, 3, 4, 5 ];

if ( a in list ):

print "1 - 變量 a 在給定的列表中 list 中"

else:

print "1 - 變量 a 不在給定的列表中 list 中"

if ( b not in list ):

print "2 - 變量 b 不在給定的列表中 list 中"

else:

print "2 - 變量 b 在給定的列表中 list 中"

a = 2

if ( a in list ):

print "3 - 變量 a 在給定的列表中 list 中"

else:

print "3 - 變量 a 不在給定的列表中 list 中"

條件

flag = False

name = 'luren'

if name == 'python': # 判斷變量否為'python'

flag = True # 條件成立時設(shè)置標(biāo)志為真

print 'welcome boss' # 并輸出歡迎信息

else:

print name

num = 5

if num == 3: # 判斷num的值

print 'boss'

elif num == 2:

print 'user'

elif num == 1:

print 'worker'

elif num 0: # 值小于零時輸出

print 'error'

else:

print 'roadman' # 條件均不成立時輸出

循環(huán)語句:

count = 0

while (count 9):

print 'The count is:', count

count = count + 1

print "Good bye!"

i = 1

while i 10:

i += 1

if i%2 0: # 非雙數(shù)時跳過輸出

continue

print i # 輸出雙數(shù)2、4、6、8、10

i = 1

while 1: # 循環(huán)條件為1必定成立

print i # 輸出1~10

i += 1

if i 10: # 當(dāng)i大于10時跳出循環(huán)

break

for letter in 'Python': # 第一個實例

print '當(dāng)前字母 :', letter

fruits = ['banana', 'apple', 'mango']

for fruit in fruits: # 第二個實例

print '當(dāng)前水果 :', fruit

print "Good bye!"

獲取用戶輸入:raw_input

var = 1

while var == 1 : # 該條件永遠(yuǎn)為true,循環(huán)將無限執(zhí)行下去

num = raw_input("Enter a number :")

print "You entered: ", num

print "Good bye!"

range,len

fruits = ['banana', 'apple', 'mango']

for index in range(len(fruits)):

print '當(dāng)前水果 :', fruits[index]

print "Good bye!"

python數(shù)學(xué)函數(shù):

abs,cell,cmp,exp,fabs,floor,log,log10,max,min,mod,pow,round,sqrt

randrange

訪問字符串的值

var1 = 'Hello World!'

var2 = "Python Runoob"

print "var1[0]: ", var1[0]

print "var2[1:5]: ", var2[1:5]

轉(zhuǎn)義字符

格式化輸出

print "My name is %s and weight is %d kg!" % ('Zara', 21)

字符串函數(shù):

添加元素

list = [] ## 空列表

list.append('Google') ## 使用 append() 添加元素

list.append('Runoob')

print list

刪除元素

list1 = ['physics', 'chemistry', 1997, 2000]

print list1

del list1[2]

print "After deleting value at index 2 : "

print list1

列表操作

列表方法

刪除字典

dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'};

del dict['Name']; # 刪除鍵是'Name'的條目

dict.clear(); # 清空詞典所有條目

del dict ; # 刪除詞典

print "dict['Age']: ", dict['Age'];

print "dict['School']: ", dict['School'];

字典的函數(shù):

當(dāng)前時間戳:

import time

time.time()

格式化日期輸出

import time

print time.strftime("%Y-%m-%d %H:%M:%S", time.localtime())

print time.strftime("%a %b %d %H:%M:%S %Y", time.localtime())

a = "Sat Mar 28 22:24:24 2016"

print time.mktime(time.strptime(a,"%a %b %d %H:%M:%S %Y"))

獲取某個月日歷:calendar

import calendar

cal = calendar.month(2016, 1)

print "以下輸出2016年1月份的日歷:"

print cal

當(dāng)前日期和時間

import datetime

i = datetime.datetime.now()

print ("當(dāng)前的日期和時間是 %s" % i)

print ("ISO格式的日期和時間是 %s" % i.isoformat() )

print ("當(dāng)前的年份是 %s" %i.year)

print ("當(dāng)前的月份是 %s" %i.month)

print ("當(dāng)前的日期是 %s" %i.day)

print ("dd/mm/yyyy 格式是 %s/%s/%s" % (i.day, i.month, i.year) )

print ("當(dāng)前小時是 %s" %i.hour)

print ("當(dāng)前分鐘是 %s" %i.minute)

print ("當(dāng)前秒是 %s" %i.second)

不定長參數(shù):*

lambda:匿名函數(shù)

def....

python模塊搜索路徑

獲取用戶輸入

str = raw_input("請輸入:")

print "你輸入的內(nèi)容是: ", str

input可以接收表達(dá)式

open參數(shù)

write要自己添加換行符

讀取10個字符

重命名:os.rename

os.remove

os.mkdir os.chdir

os.getcwd

os.rmdir

open參數(shù)

file的方法

異常:

try:

fh = open("testfile", "w")

fh.write("這是一個測試文件,用于測試異常!!")

except IOError:

print "Error: 沒有找到文件或讀取文件失敗"

else:

print "內(nèi)容寫入文件成功"

fh.close()

try:

fh = open("testfile", "w")

fh.write("這是一個測試文件,用于測試異常!!")

finally:

print "Error: 沒有找到文件或讀取文件失敗"

用戶自定義異常:

os 模塊提供了非常豐富的方法用來處理文件和目錄。常用的方法如下表所示:

| 序號 | 方法及描述 |

| 1 |

os.access(path, mode)

檢驗權(quán)限模式 |

| 2 |

os.chdir(path)

改變當(dāng)前工作目錄 |

| 3 |

os.chflags(path, flags)

設(shè)置路徑的標(biāo)記為數(shù)字標(biāo)記。 |

| 4 |

os.chmod(path, mode)

更改權(quán)限 |

| 5 |

os.chown(path, uid, gid)

更改文件所有者 |

| 6 |

os.chroot(path)

改變當(dāng)前進(jìn)程的根目錄 |

| 7 |

os.close(fd)

關(guān)閉文件描述符 fd |

| 8 |

os.closerange(fd_low, fd_high)

關(guān)閉所有文件描述符,從 fd_low (包含) 到 fd_high (不包含), 錯誤會忽略 |

| 9 |

os.dup(fd)

復(fù)制文件描述符 fd |

| 10 |

os.dup2(fd, fd2)

將一個文件描述符 fd 復(fù)制到另一個 fd2 |

| 11 |

os.fchdir(fd)

通過文件描述符改變當(dāng)前工作目錄 |

| 12 |

os.fchmod(fd, mode)

改變一個文件的訪問權(quán)限,該文件由參數(shù)fd指定,參數(shù)mode是Unix下的文件訪問權(quán)限。 |

| 13 |

os.fchown(fd, uid, gid)

修改一個文件的所有權(quán),這個函數(shù)修改一個文件的用戶ID和用戶組ID,該文件由文件描述符fd指定。 |

| 14 |

os.fdatasync(fd)

強(qiáng)制將文件寫入磁盤,該文件由文件描述符fd指定,但是不強(qiáng)制更新文件的狀態(tài)信息。 |

| 15 |

os.fdopen(fd[, mode[, bufsize]])

通過文件描述符 fd 創(chuàng)建一個文件對象,并返回這個文件對象 |

| 16 |

os.fpathconf(fd, name)

返回一個打開的文件的系統(tǒng)配置信息。name為檢索的系統(tǒng)配置的值,它也許是一個定義系統(tǒng)值的字符串,這些名字在很多標(biāo)準(zhǔn)中指定(POSIX.1, Unix 95, Unix 98, 和其它)。 |

| 17 |

os.fstat(fd)

返回文件描述符fd的狀態(tài),像stat()。 |

| 18 |

os.fstatvfs(fd)

返回包含文件描述符fd的文件的文件系統(tǒng)的信息,像 statvfs() |

| 19 |

os.fsync(fd)

強(qiáng)制將文件描述符為fd的文件寫入硬盤。 |

| 20 |

os.ftruncate(fd, length)

裁剪文件描述符fd對應(yīng)的文件, 所以它最大不能超過文件大小。 |

| 21 |

os.getcwd()

返回當(dāng)前工作目錄 |

| 22 |

os.getcwdu()

返回一個當(dāng)前工作目錄的Unicode對象 |

| 23 |

os.isatty(fd)

如果文件描述符fd是打開的,同時與tty(-like)設(shè)備相連,則返回true, 否則False。 |

| 24 |

os.lchflags(path, flags)

設(shè)置路徑的標(biāo)記為數(shù)字標(biāo)記,類似 chflags(),但是沒有軟鏈接 |

| 25 |

os.lchmod(path, mode)

修改連接文件權(quán)限 |

| 26 |

os.lchown(path, uid, gid)

更改文件所有者,類似 chown,但是不追蹤鏈接。 |

| 27 |

os.link(src, dst)

創(chuàng)建硬鏈接,名為參數(shù) dst,指向參數(shù) src |

| 28 |

os.listdir(path)

返回path指定的文件夾包含的文件或文件夾的名字的列表。 |

| 29 |

os.lseek(fd, pos, how)

設(shè)置文件描述符 fd當(dāng)前位置為pos, how方式修改: SEEK_SET 或者 0 設(shè)置從文件開始的計算的pos; SEEK_CUR或者 1 則從當(dāng)前位置計算; os.SEEK_END或者2則從文件尾部開始. 在unix,Windows中有效 |

| 30 |

os.lstat(path)

像stat(),但是沒有軟鏈接 |

| 31 |

os.major(device)

從原始的設(shè)備號中提取設(shè)備major號碼 (使用stat中的st_dev或者st_rdev field)。 |

| 32 |

os.makedev(major, minor)

以major和minor設(shè)備號組成一個原始設(shè)備號 |

| 33 |

os.makedirs(path[, mode])

遞歸文件夾創(chuàng)建函數(shù)。像mkdir(), 但創(chuàng)建的所有intermediate-level文件夾需要包含子文件夾。 |

| 34 |

os.minor(device)

從原始的設(shè)備號中提取設(shè)備minor號碼 (使用stat中的st_dev或者st_rdev field )。 |

| 35 |

os.mkdir(path[, mode])

以數(shù)字mode的mode創(chuàng)建一個名為path的文件夾.默認(rèn)的 mode 是 0777 (八進(jìn)制)。 |

| 36 |

os.mkfifo(path[, mode])

創(chuàng)建命名管道,mode 為數(shù)字,默認(rèn)為 0666 (八進(jìn)制) |

| 37 |

os.mknod(filename[, mode=0600, device])

創(chuàng)建一個名為filename文件系統(tǒng)節(jié)點(文件,設(shè)備特別文件或者命名pipe)。

|

| 38 |

os.open(file, flags[, mode])

打開一個文件,并且設(shè)置需要的打開選項,mode參數(shù)是可選的 |

| 39 |

os.openpty()

打開一個新的偽終端對。返回 pty 和 tty的文件描述符。 |

| 40 |

os.pathconf(path, name)

返回相關(guān)文件的系統(tǒng)配置信息。 |

| 41 |

os.pipe()

創(chuàng)建一個管道. 返回一對文件描述符(r, w) 分別為讀和寫 |

| 42 |

os.popen(command[, mode[, bufsize]])

從一個 command 打開一個管道 |

| 43 |

os.read(fd, n)

從文件描述符 fd 中讀取最多 n 個字節(jié),返回包含讀取字節(jié)的字符串,文件描述符 fd對應(yīng)文件已達(dá)到結(jié)尾, 返回一個空字符串。 |

| 44 |

os.readlink(path)

返回軟鏈接所指向的文件 |

| 45 |

os.remove(path)

刪除路徑為path的文件。如果path 是一個文件夾,將拋出OSError; 查看下面的rmdir()刪除一個 directory。 |

| 46 |

os.removedirs(path)

遞歸刪除目錄。 |

| 47 |

os.rename(src, dst)

重命名文件或目錄,從 src 到 dst |

| 48 |

os.renames(old, new)

遞歸地對目錄進(jìn)行更名,也可以對文件進(jìn)行更名。 |

| 49 |

os.rmdir(path)

刪除path指定的空目錄,如果目錄非空,則拋出一個OSError異常。 |

| 50 |

os.stat(path)

獲取path指定的路徑的信息,功能等同于C API中的stat()系統(tǒng)調(diào)用。 |

| 51 |

os.stat_float_times([newvalue])

決定stat_result是否以float對象顯示時間戳

|

| 52 |

os.statvfs(path)

獲取指定路徑的文件系統(tǒng)統(tǒng)計信息 |

| 53 |

os.symlink(src, dst)

創(chuàng)建一個軟鏈接 |

| 54 |

os.tcgetpgrp(fd)

返回與終端fd(一個由os.open()返回的打開的文件描述符)關(guān)聯(lián)的進(jìn)程組 |

| 55 |

os.tcsetpgrp(fd, pg)

設(shè)置與終端fd(一個由os.open()返回的打開的文件描述符)關(guān)聯(lián)的進(jìn)程組為pg。 |

| 56 |

os.tempnam([dir[, prefix]])

返回唯一的路徑名用于創(chuàng)建臨時文件。 |

| 57 |

os.tmpfile()

返回一個打開的模式為(w+b)的文件對象 .這文件對象沒有文件夾入口,沒有文件描述符,將會自動刪除。 |

| 58 |

os.tmpnam()

為創(chuàng)建一個臨時文件返回一個唯一的路徑 |

| 59 |

os.ttyname(fd)

返回一個字符串,它表示與文件描述符fd 關(guān)聯(lián)的終端設(shè)備。如果fd 沒有與終端設(shè)備關(guān)聯(lián),則引發(fā)一個異常。 |

| 60 |

os.unlink(path)

刪除文件路徑 |

| 61 |

os.utime(path, times)

返回指定的path文件的訪問和修改的時間。 |

| 62 |

os.walk(top[, topdown=True[, onerror=None[, followlinks=False]]])

輸出在文件夾中的文件名通過在樹中游走,向上或者向下。 |

| 63 |

os.write(fd, str)

寫入字符串到文件描述符 fd中. 返回實際寫入的字符串長度 |

本文題目:python第七節(jié)函數(shù) python函數(shù)總結(jié)
網(wǎng)站鏈接:http://muchs.cn/article6/doegcig.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、品牌網(wǎng)站設(shè)計、靜態(tài)網(wǎng)站、商城網(wǎng)站、標(biāo)簽優(yōu)化、服務(wù)器托管

廣告

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

成都定制網(wǎng)站網(wǎng)頁設(shè)計