如果為函式引數提供乙個預設值,可以實現引數的可選擇性
""" 定義乙個函式,可以實現列表中的巢狀列表的縮排,預設引數值,實現函式引數的可選擇",預設情況下為縮排"""
def print_lol (the_list,level = 0):
for(each_item) in the_list:
if isinstance(each_item,list):
print_lol(each_item,level + 1)
else:
""" range()實現迭代固定次數"""
for top_stop in range(level):
print("\t",end='')
print(each_item)
print_lol函式的實現;
""" 呼叫nester模組,實現print_lol函式"""
import chapter2.nester
movies = ["the holy grail","1975","terryjones & terry gilliam","91 mins",["graham",["michael palin","john cleese"]]]
""" 輸出有製表符的list,最外層list不縮排"""
chapter2.nester.print_lol(movies,0)
""" level為可選引數,設定預設值為0,輸出結果和上面的一樣"""
chapter2.nester.print_lol(movies)
""" 定義首行縮排為3 """
chapter2.nester.print_lol(movies,3)
""" level 不可能為負整數,所以會關閉縮排"""
chapter2.nester.print_lol(movies,-9)
結果展示
為函式再增加乙個引數,實現自由選擇縮排或者不縮排
""" 改進的nester模組,實現縮排的隨時開啟和關閉"""
def print_lol (the_list,indent = false,level = 0):
for each_item in the_list:
if isinstance(each_item,list):
print_lol(each_item,indent,level + 1)
else:
if indent:
""" 相當於
for top_stop in range(level):
print("\t",end='')
"""print("\t"*level,end='')
print(each_item)
函式的實現:
"" 改進的nester 模組的實現,隨時可以開啟或關閉縮排"""
import chapter2.nester1
movies = ["the life of brian","1979","terryjones","94mins",["graham",["michael","john"]]]
""" 不縮排"""
chapter2.nester1.print_lol(movies)
"""" 縮排,且首行為預設縮排"""
chapter2.nester1.print_lol(movies,true)
""" 縮排,自定義縮排"""
chapter2.nester1.print_lol(movies,true,3)
結果:
python函式 模組
一 函式 函式是組織好的,可以重複利用,用來實現一定功能的 段。1 函式的組成部分 1 函式 塊以 def 關鍵字開始,後接函式名稱和括號 然後是冒號 2 任何傳入的引數和自變數必須放在 中 3 函式第一行語句可以寫注釋表明函式的功能 4 段,描述了函式實現的功能,需要縮排 5 return 表示式...
Python函式 模組
模組 定義函式使用def 函式體寫在縮排塊中,函式的返回值用return語句返回,函式執行完畢也沒有return語句時,自動return none 如果想定義乙個什麼事也不做的空函式,可以用pass語句,pass可以用來作為佔位符,如果沒想好怎麼寫,可以先寫乙個pass函式,讓 執行起來 函式 含義...
Python 函式 模組
1.函式的定義 2.函式的呼叫 格式 函式名 函式只能先定義再使用,即函式的呼叫不能出現在函式定義部分的上方。3.除錯工具3.函式注釋 4.函式引數的使用 形參是乙個容器實參是放在容器內的東西。5.函式的返回值 使用return關鍵字可以返回結果。用return返回後,後續的 都不會再執行。模組1....