python學習之路(二) -- 函數、JSON、終端樣式
阿新 • • 發佈:2017-11-20
blog ade def 數量 通過 等於 name tuple args
函數
函數構成
定義函數:使用def即可
def __getName(idCard):
return user_info[idCard].Name
其中,__getName即函數的名字,包含一個參數idCard
如果需要有返回值,return即可
def __test():
print(a)
return
print(b)
上述函數即不包含返回值,return只是表示函數終止,即僅輸出a
函數調用
調用方式也很簡單:functionName(para_A,para_B....)
參數
參數類型: 1、必備參數 2、關鍵字參數 3、缺省參數 4、不定長參數 1)必備參數 必備參數必須以正確的順序傳入函數,調用時的數量必須和聲明時一樣 def __printStr(str): print(str) 調用這個函數,必須要傳入str參數
2) 關鍵字參數
即調用函數時,使用關鍵字參數確定傳入的參數,而所謂的關鍵字就是參數名稱,類似必備參數需要寫成__printStr(str = "abc")
其實就等於指定參數傳遞,對於參數較多、且絕大部分參數都有默認值、只需要改變較少的參數時非常有用,與.Net功能類似
3)缺省參數
即參數包含默認值,可傳可不傳
def __printStr(str = "Nobody"):
print(str)
調用這個函數可以使用__printStr()方式,打印Nobody
4)不定長參數
在聲明函數時,不確定參數的數量,即可聲明不定長參數
def __printStr(*args):
for ele in args:
print(ele)
調用時,可以時__printStr(10,20,30),可以輸出10,20,30
def __printStr(**args):
for eleKey,eleValue in args:
print(eleKey,":",eleValue)
用兩個星號,與一個星號類似,不過在內部會被看作是
{a:10,b:20,c:30}
簡單來說,可以暫時理解為一顆星號會將多個參數作為列表傳入;多顆星號會將多個參數作為字段傳入
JSON
有默認模塊支持,使用時需要導入json模塊
json關鍵函數
json.dumps : 將Python對象編碼成json字符串 json.loads : 將已編碼的json字符串解碼為Python對象 python原始類型 轉換為 json類型對照表:
Python類型 | json類型 |
---|---|
dict | object |
list,tuple | array |
str,unicode | string |
int,long,float | number |
True | true |
False | false |
None | null |
值得註意的是json默認字符集選擇的是utf-8,所以通常不需要修改
還有indent參數,默認為None,在將json字符串寫入到文件中時,通過改動這個參數,可以微微調整一下生成json的樣式,會美觀一些,類似格式化
終端樣式
開發過程中,為了方便調試,可能會在控制臺中輸出一些日誌信息,那麽在繁雜的日誌信息中,如果能夠高亮展示關鍵信息,對使用體驗、效率來說是非常方便的一件事情了,在python中,設置終端展示樣式很有趣:
設置格式:\033[顯示方式;前景色;背景色m
取消設置格式:\033[0m
以下是顏色對照表:
前景色 | 背景色 | 顏色 |
---|---|---|
30 | 40 | 黑色 |
31 | 41 | 紅色 |
32 | 42 | 綠色 |
33 | 43 | 黃色 |
34 | 44 | 藍色 |
35 | 45 | 紫紅色 |
36 | 46 | 青藍色 |
37 | 47 | 白色 |
以下是顯示效果:
顯示方式 | 效果 |
---|---|
0 | 終端默認設置 |
1 | 高亮顯示 |
4 | 使用下劃線 |
5 | 閃爍 |
7 | 反白顯示 |
8 | 不可見 |
python學習之路(二) -- 函數、JSON、終端樣式