python从入门到实践_Python编程从入门到实践日记Day32
Python編程從入門到實踐日記Day32
第7章 函數(八)
1.傳遞任意數量的實參 — 使用任意數量的關鍵字實參 有時候,需要接受任意數量的實參,但預先不知道傳遞給函數的會是什么樣的信息。在這種情況下,可將函數編寫成能夠接受任意數量的鍵-值對—調用語句提供了多少就接受多少。一個這樣的示例是創建用戶簡介:你知道你將收到有關用戶的信息,但不確會是什么樣的信息。在下面的示例中,函數build_profile()接受名和姓,同時還接受任意數量的關鍵字實參: 函數build_profile()的定義要求提供名和姓,同時允許用戶根據需要提供任意數量的名稱-值對。形參**user_info中的兩個星號讓Python創建一個名為user_info的空字典,并將收到的所有名稱-值對都封裝到這個字典中。在這個函數中,可以像訪問其他字典那樣訪問user_info中的名稱-值對。 在build_profile()的函數體內,我們創建了一個名為profile的空字典,用于存儲用戶簡介。在第四行代碼處,我們將名和姓加入到這個字典中,因為我們總是會從用戶那里收到這兩項信息。在第六行代碼處,我們遍歷字典user_info中的鍵-值對,并將每個鍵-值對都加入到字典profile中。最后,我們將字典profile返回給函數調用行。 我們調用build_profile(),向它傳遞名(‘albert’)、姓(‘einstein’)和兩個鍵-值對(location=‘princeton’和field=‘physics’),并將返回的profile存儲在變量user_profile中,再打印這個變量: 在這里,返回的字典包含用戶的名和姓,還有求學的地方和所學專業。調用這個函數時,不管額外提供了多少個鍵-值對,它都能正確地處理。 2.將函數存儲在模塊中 函數的優點之一是,使用它們可將代碼塊與主程序分離。通過給函數指定描述性名稱,可讓主程序容易理解的多。還可以更進一步,將函數存儲在被稱為模塊的獨立文件中,再將模塊導入到主程序中。import語句允許在當前運行的程序文件中使用模塊中的代碼。 通過將函數存儲在獨立的文件中,可隱藏程序代碼的細節,將重點放在程序的高層邏輯上,這還能讓你在眾多不同的程序中重用函數。將函數存儲在獨立文件中后,可與其他程序員共享這些文件,而不是整個程序。知道如何導入函數還能讓你使用其他程序員編寫的函數庫。 —? 導入整個模塊 要讓函數是可導入的,得先創建模塊。模塊是擴展名為.py的文件,包含要導入到程序中的代碼。下面來創建一個包含函數make_pizza()的模塊。為此,我們將文件pizza.py中除函數make_pizza()之外的其他代碼都刪除: 接下來,我們在pizza.py所在的目錄中創建另一個名為making_pizzas.py的文件,這個文件導入剛創建的模塊,再調用make_pizza()兩次: Python讀這個文件時,代碼行import pizza讓Python打開文件pizza.py,并將其中的所有函數都復制到這個程序中。你看不到復制的代碼,因為這個程序運行時,Python在幕后復制這些代碼。你只需知道,在making_pizzas.py中,可以使用pizza.py中定義的所有函數。 要調用被導入的模塊中的函數,可指定導入的模塊的名稱pizza和函數名make_pizza(),并用句點分隔它們。這些代碼的輸出與沒有導入模塊的原始程序相同: 這就是一種導入方法:只需編寫一條import語句并在其中指定模塊名,就可在程序中使用該模塊中的所有函數。 | _ |
如果大家有什么好的意見或建議,記得留言哦!
總結
以上是生活随笔為你收集整理的python从入门到实践_Python编程从入门到实践日记Day32的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: uniapph5授权成功后返回上一页_被
- 下一篇: sd卡写入保护怎么办 SD卡无法写入解决