本篇部落格主要針對函式、檔案、異常,這3個部分的基本使用方法進行學習。
函式的定義用def,後面跟著函式名。同c++一樣需要乙個小括號包含傳遞的引數,另外還需要乙個冒號。
def
myfunction()
:
函式體的內容直接在下面寫出即可,何時編寫結束依然是以縮排為準,python中同樣要有return。
如果引數的位置加上了*
,那麼表示像指標一樣,此引數可以收集乙個「陣列」,裡面有多個引數。
def
test
(*params,exp):
print
('引數的長度是:',len
(params)
,exp)
;print
('第二個引數是:' params[1]
);
直接使用函式名(實參)
即可呼叫起已定義過的函式。
myfunction(
)test(
1,'小甲魚',3.14,5,6,7,exp=
8)
同c++一樣,可以給出引數的預設值。
此外,引數可以由關鍵字來指定,格式形參2 = 實參2 , 形參1 = 實參1
,這樣可以排除引數順序的影響。
在函式體的第一行,建議用單引號包住此函式的解釋。這樣呼叫可以隨時檢視此函式作用。
myfunction.__doc__
python裡面函式體內可以繼續定義函式
def
funl():
print
('funl(
)正在被呼叫……)
deffun2():
print
('fun2()正在被呼叫……)
具體例項可見下例:
def
funx
(x):
deffuny
(y):
return x*y
return funy
i=funx(8)
i(5)#得到5*8=40
funx(8)
(5)#得到5*8=40
同理函式可以呼叫自身,即遞迴(條件:1、函式體呼叫自身,2、有乙個終止條件)。
lambda可以省去函式定義過程,比較簡單。
用lambda
關鍵字和冒號:
進行定義,其中冒號前面是引數,冒號後面是對引數的實現
g =
lambda x :
2* x +1g(
5)g =lambda x , y: x + y g(3
,4)
list
(filter
(lambda x : x %2,
range(10
)))#[1,3,5,7,9]
2、對映map:將目標一一對映為所需內容
list
(map
(lambda x : x *
2range(10
)))#[2,4,6,8,10,12,14,16,18,20]
使用read成員函式即可實現對檔案內容的讀取
f =
open
('e:\\record.txt'
)f.read(
)f.close(
)
f =
open
('e:\\test.txt'
,'w'
)f.write(
'xidian nb'
)f.close(
)
比檔案更上層,如建立資料夾(目錄),修改檔名、處理路徑等操作。匯入os模組即可,具體操作不贅述。
若需要永久儲存檔案,可用pickle模組。主要用途是把字典存入乙個其他檔案,使源**易懂整潔
import os
import pickle
在程式設計時,為了**安全和穩定,將程式設計可能出的錯誤丟擲。異常的種類有很多,要在exception中捕獲,具體有哪些這裡不贅述。
使用assert語句,assert類似於if,當後面條件成立時才會繼續,否則丟擲異常。
assert
len(
list
)>
0
格式:
try
: 檢測範圍
except exception as reason :
出現異常(exception)後的處理**
finally
: 無論如何都會被執行的**
其中finally
可以省去,as reason
也可以省去,但為了易懂,建議採用。對應乙個try,可以對應有很多except。
對應try,除了except,其實也可以使用else來表示,沒有發生異常時會進行什麼樣的操作。
在某位置提出乙個異常。
Python學習2 Python物件
所有python物件都有三個特性 身份 每乙個物件都有乙個唯一的身份標識自己,可以使用內建函式id 獲取 型別 可以使用內建函式type 獲取 值數字,字串,列表,元組,字典 型別,none物件,檔案,集合 固定集合,函式,模組,類 1.型別物件 type 獲取物件的型別資訊 所有型別物件的型別都是...
python入門2 Python入門2
1列表和元組 列表 當索引超出了範圍時,python會報乙個indexerror錯誤 usr bin env python3 coding utf 8 列印s的1,v,9.注意 索引計數從 0 開始 s 1,2,3 a v b 7,8,9 列印1 print s 0 0 列印v print s 1 ...
Python筆記(2) Python基礎
經常可以看到 python 原始碼檔案中第一行經常出現下面這行 usr bin python是用來說明指令碼語言是 python 的,要用 usr bin下面的程式 python 這個直譯器,來解釋 python 指令碼,來執行 python 指令碼的 即指定用什麼直譯器執行指令碼以及直譯器所在的位...