欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

python創(chuàng)建函數(shù)庫(kù),Python自己創(chuàng)建函數(shù)

Python中定義函數(shù)的使用方法?

4.6. 定義函數(shù)

我們擁有十年網(wǎng)頁設(shè)計(jì)和網(wǎng)站建設(shè)經(jīng)驗(yàn),從網(wǎng)站策劃到網(wǎng)站制作,我們的網(wǎng)頁設(shè)計(jì)師為您提供的解決方案。為企業(yè)提供做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)、微信開發(fā)、小程序定制開發(fā)成都做手機(jī)網(wǎng)站、H5網(wǎng)站設(shè)計(jì)、等業(yè)務(wù)。無論您有什么樣的網(wǎng)站設(shè)計(jì)或者設(shè)計(jì)方案要求,我們都將富于創(chuàng)造性的提供專業(yè)設(shè)計(jì)服務(wù)并滿足您的需求。

我們可以創(chuàng)建一個(gè)用來生成指定邊界的斐波那契數(shù)列的函數(shù):

def fib(n): # write Fibonacci series up to n

... """Print a Fibonacci series up to n."""

... a, b = 0, 1

... while a n:

... print(a, end=' ')

... a, b = b, a+b

... print()

...

# Now call the function we just defined:

... fib(2000)

0 1 1 2 3 5 8 13 21 34 55 89 144 233 377 610 987 1597

關(guān)鍵字 def 引入了一個(gè)函數(shù) 定義。在其后必須跟有函數(shù)名和包括形式參數(shù)的圓括號(hào)。函數(shù)體語句從下一行開始,必須是縮進(jìn)的。

函數(shù)體的第一行語句可以是可選的字符串文本,這個(gè)字符串是函數(shù)的文檔字符串,或者稱為 docstring。(更多關(guān)于 docstrings 的信息請(qǐng)參考 文檔字符串) 有些工具通過 docstrings 自動(dòng)生成在線的或可打印的文檔,或者讓用戶通過代碼交互瀏覽;在你的代碼中包含 docstrings 是一個(gè)好的實(shí)踐,讓它成為習(xí)慣吧。

函數(shù) 調(diào)用 會(huì)為函數(shù)局部變量生成一個(gè)新的符號(hào)表。確切的說,所有函數(shù)中的變量賦值都是將值存儲(chǔ)在局部符號(hào)表。變量引用首先在局部符號(hào)表中查找,然后是包含函數(shù)的局部符號(hào)表,然后是全局符號(hào)表,最后是內(nèi)置名字表。因此,全局變量不能在函數(shù)中直接賦值(除非用 global 語句命名),盡管他們可以被引用。

函數(shù)引用的實(shí)際參數(shù)在函數(shù)調(diào)用時(shí)引入局部符號(hào)表,因此,實(shí)參總是 傳值調(diào)用 (這里的 值 總是一個(gè)對(duì)象 引用 ,而不是該對(duì)象的值)。[1] 一個(gè)函數(shù)被另一個(gè)函數(shù)調(diào)用時(shí),一個(gè)新的局部符號(hào)表在調(diào)用過程中被創(chuàng)建。

一個(gè)函數(shù)定義會(huì)在當(dāng)前符號(hào)表內(nèi)引入函數(shù)名。函數(shù)名指代的值(即函數(shù)體)有一個(gè)被 Python 解釋器認(rèn)定為 用戶自定義函數(shù) 的類型。 這個(gè)值可以賦予其他的名字(即變量名),然后它也可以被當(dāng)作函數(shù)使用。這可以作為通用的重命名機(jī)制:

fib

f = fib

f(100)

0 1 1 2 3 5 8 13 21 34 55 89

如果你使用過其他語言,你可能會(huì)反對(duì)說:fib 不是一個(gè)函數(shù),而是一個(gè)方法,因?yàn)樗⒉环祷厝魏沃?。事?shí)上,沒有 return 語句的函數(shù)確實(shí)會(huì)返回一個(gè)值,雖然是一個(gè)相當(dāng)令人厭煩的值(指 None )。這個(gè)值被稱為 None (這是一個(gè)內(nèi)建名稱)。如果 None 值是唯一被書寫的值,那么在寫的時(shí)候通常會(huì)被解釋器忽略(即不輸出任何內(nèi)容)。如果你確實(shí)想看到這個(gè)值的輸出內(nèi)容,請(qǐng)使用 print() 函數(shù):

【Python基礎(chǔ)】python數(shù)據(jù)分析需要哪些庫(kù)?

1.Numpy庫(kù)

是Python開源的數(shù)值計(jì)算擴(kuò)展工具,提供了Python對(duì)多維數(shù)組的支持,能夠支持高級(jí)的維度數(shù)組與矩陣運(yùn)算。此外,針對(duì)數(shù)組運(yùn)算也提供了大量的數(shù)學(xué)函數(shù)庫(kù),Numpy是大部分Python科學(xué)計(jì)算的基礎(chǔ),具有很多功能。

2.Pandas庫(kù)

是一個(gè)基于Numpy的數(shù)據(jù)分析包,為了解決數(shù)據(jù)分析任務(wù)而創(chuàng)建的。Pandas中納入了大量庫(kù)和標(biāo)準(zhǔn)的數(shù)據(jù)模型,提供了高效地操作大型數(shù)據(jù)集所需要的函數(shù)和方法,使用戶能快速便捷地處理數(shù)據(jù)。

3.Matplotlib庫(kù)

是一個(gè)用在Python中繪制數(shù)組的2D圖形庫(kù),雖然它起源于模仿MATLAB圖形命令,但它獨(dú)立于MATLAB,可以通過Pythonic和面向?qū)ο蟮姆绞绞褂?,是Python中最出色的繪圖庫(kù)。主要用純Python語言編寫的,它大量使用Numpy和其他擴(kuò)展代碼,即使對(duì)大型數(shù)組也能提供良好的性能。

4.Seaborn庫(kù)

是Python中基于Matplotlib的數(shù)據(jù)可視化工具,提供了很多高層封裝的函數(shù),幫助數(shù)據(jù)分析人員快速繪制美觀的數(shù)據(jù)圖形,從而避免了許多額外的參數(shù)配置問題。

5.NLTK庫(kù)

被稱為使用Python進(jìn)行教學(xué)和計(jì)算語言學(xué)工作的最佳工具,以及用自然語言進(jìn)行游戲的神奇圖書館。NLTK是一個(gè)領(lǐng)先的平臺(tái),用于構(gòu)建使用人類語言數(shù)據(jù)的Python程序,它為超過50個(gè)語料庫(kù)和詞匯資源提供了易于使用的接口,還提供了一套文本處理庫(kù),用于分類、標(biāo)記化、詞干化、解析和語義推理、NLP庫(kù)的包裝器和一個(gè)活躍的討論社區(qū)。

在Python中定義Main函數(shù)

目錄

許多編程語言都有一個(gè)特殊的函數(shù),當(dāng)操作系統(tǒng)開始運(yùn)行程序時(shí)會(huì)自動(dòng)執(zhí)行該函數(shù)。這個(gè)函數(shù)通常被命名為main(),并且依據(jù)語言標(biāo)準(zhǔn)具有特定的返回類型和參數(shù)。另一方面,Python解釋器從文件頂部開始執(zhí)行腳本,并且沒有自動(dòng)執(zhí)行的特殊函數(shù)。

盡管如此,為程序的執(zhí)行定義一個(gè)起始點(diǎn)有助于理解程序是如何運(yùn)行的。Python程序員提出了幾種方式對(duì)此進(jìn)行實(shí)現(xiàn)。

本文結(jié)束時(shí),您將了解以下內(nèi)容:

Python中的基本main()函數(shù)

一些Python腳本中,包含一個(gè)函數(shù)定義和一個(gè)條件語句,如下所示:

此代碼中,包含一個(gè)main()函數(shù),在程序執(zhí)行時(shí)打印Hello World!。此外,還包含一個(gè)條件(或if)語句,用于檢查__name__的值并將其與字符串"__main__"進(jìn)行比較。當(dāng)if語句為True時(shí),Python解釋器將執(zhí)行main()函數(shù)。更多關(guān)于Python條件語句的信息可以由此獲得。

這種代碼模式在Python文件中非常常見,它將作為腳本執(zhí)行并導(dǎo)入另一個(gè)模塊。為了幫助理解這段代碼的執(zhí)行方式,首先需要了解Python解釋器如何根據(jù)代碼的執(zhí)行方式設(shè)置__name__。

Python中的執(zhí)行模式

Python解釋器執(zhí)行代碼有兩種方式:

更多內(nèi)容可參考如何運(yùn)行Python腳本。無論采用哪種方式,Python都會(huì)定義一個(gè)名為__name__的特殊變量,該變量包含一個(gè)字符串,其值取決于代碼的使用方式。

本文將如下示例文件保存為execution_methods.py,以 探索 代碼如何根據(jù)上下文改變行為:

在此文件中,定義了三個(gè)對(duì)print()函數(shù)的調(diào)用。前兩個(gè)打印一些介紹性短語。第三個(gè)print()會(huì)先打印短語The value __name__ is,之后將使用Python內(nèi)置的repr()函數(shù)打印出__name__變量。

在Python中,repr()函數(shù)將對(duì)象轉(zhuǎn)化為供解釋器讀取的形式。上述示例通過使用repr()函數(shù)來強(qiáng)調(diào)__name__的值為字符串。更多關(guān)于repr()的內(nèi)容可參考Python文檔。

在本文中,您將隨處可見文件(file),模塊(module)和腳本(script)這三個(gè)字眼。實(shí)際上,三者之間并無太大的差別。不過,在強(qiáng)調(diào)代碼目的時(shí),還是存在細(xì)微的差異:

“如何運(yùn)行Python腳本”一文也討論了三者的差別。

基于命令行執(zhí)行

在這類方法中,Python腳本將通過命令行來執(zhí)行。

執(zhí)行腳本時(shí),無法與Python解釋器正在執(zhí)行的代碼交互。關(guān)于如何通過命令行執(zhí)行代碼的詳細(xì)信息對(duì)本文而言并不重要,但您可以通過展開下框閱讀更多有關(guān)Windows,Linux和macOS之間命令行差異的內(nèi)容。

命令行環(huán)境

不同的操作系統(tǒng)在使用命令行執(zhí)行代碼時(shí)存在細(xì)微的差異。

在Linux和macOS中,通常使用如下命令:

美元符號(hào)($)之前的內(nèi)容可能有所不同,具體取決于您的用戶名和計(jì)算機(jī)名稱。您鍵入的命令位于$之后。在Linux或macOS上,Python3的可執(zhí)行文件名為python3,因此可以通過輸入python3 script_name.py來運(yùn)行python腳本。

在Windows上,命令提示符通常如下所示:

根據(jù)您的用戶名,之前的內(nèi)容可能會(huì)有所不同,您輸入的命令位于之后。在Windows上,Python3的可執(zhí)行文件通常為python。因此可以通過輸入python script_name.py來運(yùn)行python腳本。

無論哪種操作系統(tǒng),本文的Python腳本的輸出結(jié)果都是相同的。因此本文以Linux和macOS為例。

使用命令行執(zhí)行execution_methods.py,如下所示:

在這個(gè)示例中,__name__具有值'__main__',其中引號(hào)(')表明該值為字符串類型。

請(qǐng)記住,在Python中,使用單引號(hào)(')和雙引號(hào)(")定義的字符串沒有區(qū)別。更多關(guān)于字符串的內(nèi)容請(qǐng)參考Python的基本數(shù)據(jù)類型。

如果在腳本中包含"shebang行"并直接執(zhí)行它(./execution_methods.py),或者使用IPython或Jupyter Notebook的%run,將會(huì)獲取相同的結(jié)果。

您還可以通過向命令行添加-m參數(shù)的方法實(shí)現(xiàn)以模塊的方式執(zhí)行。通常情況下,推薦如下方式pip: python3 -m pip install package_name。

添加-m參數(shù)將會(huì)運(yùn)行包中__main__.py的代碼。更多關(guān)于__main__.py文件的內(nèi)容可參考如何將開源Python包發(fā)布到PyPI中。

在三種情況中,__name__都具有相同的值:字符串'__main__'。

技術(shù)細(xì)節(jié):Python文檔中具體定義了__name__何時(shí)取值為'__main__'。

當(dāng)通過標(biāo)準(zhǔn)輸入,腳本或者交互提示中讀取數(shù)據(jù)時(shí),模塊的__name__將取值為'__main__'。(來源)

__name__與__doc__,__package__和其他屬性一起存儲(chǔ)在模塊的全局命名空間。更多關(guān)于屬性的信息可參考Python數(shù)據(jù)模型文檔,特別是關(guān)于模塊和包的信息,請(qǐng)參閱Python Import文檔。

導(dǎo)入模塊或解釋器

接下來是Python解釋器執(zhí)行代碼的第二種方式:導(dǎo)入。在開發(fā)模塊或腳本時(shí),可以使用import關(guān)鍵字導(dǎo)入他人已經(jīng)構(gòu)建的模塊。

在導(dǎo)入過程中,Python執(zhí)行指定模塊中定義的語句(但僅在第一次導(dǎo)入模塊時(shí))。要演示導(dǎo)入execution_methods.py文件的結(jié)果,需要啟動(dòng)Python解釋器,然后導(dǎo)入execution_methods.py文件:

在此代碼輸出中,Python解釋器執(zhí)行了三次print()函數(shù)調(diào)用。前兩行由于沒有變量,在輸出方面與在命令行上作為腳本執(zhí)行時(shí)完全相同。但是第三個(gè)輸出存在差異。

當(dāng)Python解釋器導(dǎo)入代碼時(shí),__name__的值與要導(dǎo)入的模塊的名稱相同。您可以通過第三行的輸出了解這一點(diǎn)。__name__的值為'execution_methods',是Python導(dǎo)入的.py文件。

注意如果您在沒有退出Python時(shí)再次導(dǎo)入模塊,將不會(huì)有輸出。

注意:更多關(guān)于導(dǎo)入在Python中如何工作的內(nèi)容請(qǐng)參考官方文檔和Python中的絕對(duì)和相對(duì)導(dǎo)入。

Main函數(shù)的最佳實(shí)踐

既然您已經(jīng)了解兩種執(zhí)行方式上的差異,那么掌握一些最佳實(shí)踐方案還是很有用的。它們將適用于編寫作為腳本運(yùn)行的代碼或者在另一個(gè)模塊導(dǎo)入的代碼。

如下是四種實(shí)踐方式:

將大部分代碼放入函數(shù)或類中

請(qǐng)記住,Python解釋器在導(dǎo)入模塊時(shí)會(huì)執(zhí)行模塊中的所有代碼。有時(shí)如果想要實(shí)現(xiàn)用戶可控的代碼,會(huì)導(dǎo)致一些副作用,例如:

在這種情況下,想要實(shí)現(xiàn)用戶控制觸發(fā)此代碼的執(zhí)行,而不是讓Python解釋器在導(dǎo)入模塊時(shí)執(zhí)行代碼。

因此,最佳方法是將大部分代碼包含在函數(shù)或類中。這是因?yàn)楫?dāng)Python解釋器遇到def或class關(guān)鍵字時(shí),它只存儲(chǔ)這些定義供以后使用,并且在用戶通知之前不會(huì)實(shí)際執(zhí)行。

將如下代碼保存在best_practices.py以證明這個(gè)想法:

在此代碼中,首先從time模塊中導(dǎo)入sleep()。

在這個(gè)示例中,參數(shù)以秒的形式傳入sleep()函數(shù)中,解釋器將暫停一段時(shí)間再運(yùn)行。隨后,使用print()函數(shù)打印關(guān)于代碼描述的語句。

之后,定義一個(gè)process_data()函數(shù),執(zhí)行如下五項(xiàng)操作:

在命令行中執(zhí)行

當(dāng)你將此文件作為腳本用命令行執(zhí)行時(shí)會(huì)發(fā)生什么呢?

Python解釋器將執(zhí)行函數(shù)定義之外的from time import sleep和print(),之后將創(chuàng)建函數(shù)process_data()。然后,腳本將退出而不做任何進(jìn)一步的操作,因?yàn)槟_本沒有任何執(zhí)行process_data()的代碼。

如下是這段腳本的執(zhí)行結(jié)果:

我們?cè)谶@里看到的輸出是第一個(gè)print()的結(jié)果。注意,從time導(dǎo)入和定義process_data()函數(shù)不產(chǎn)生結(jié)果。具體來說,調(diào)用定義在process_data()內(nèi)部的print()不會(huì)打印結(jié)果。

導(dǎo)入模塊或解釋器執(zhí)行

在會(huì)話(或其他模塊)中導(dǎo)入此文件時(shí),Python解釋器將執(zhí)行相同的步驟。

Python解釋器導(dǎo)入文件后,您可以使用已導(dǎo)入模塊中定義的任何變量,類或函數(shù)。為了證明這一點(diǎn),我們將使用可交互的Python解釋器。啟動(dòng)解釋器,然后鍵入import best_practices:

導(dǎo)入best_practices.py后唯一的輸出來自process_data()函數(shù)外定義的print()。導(dǎo)入模塊或解釋器執(zhí)行與基于命令行執(zhí)行類似。

使用__name__控制代碼的執(zhí)行

如何實(shí)現(xiàn)基于命令行而不使用Python解釋器導(dǎo)入文件來執(zhí)行呢?

您可以使用__name__來決定執(zhí)行上下文,并且當(dāng)__name__等于"__main__"時(shí)才執(zhí)行process_data()。在best_practices.py文件中添加如下代碼:

這段代碼添加了一個(gè)條件語句來檢驗(yàn)__name__的值。當(dāng)值為"__main__"時(shí),條件為True。記住當(dāng)__name__變量的特殊值為"__main__"時(shí)意味著Python解釋器會(huì)執(zhí)行腳本而不是將其導(dǎo)入。

條件語塊內(nèi)添加了四行代碼(第12,13,14和15行):

現(xiàn)在,在命令行中運(yùn)行best_practices.py,并觀察輸出的變化:

首先,輸出顯示了process_data()函數(shù)外的print()的調(diào)用結(jié)果。

之后,data的值被打印。因?yàn)楫?dāng)Python解釋器將文件作為腳本執(zhí)行時(shí),變量__name__具有值"__main__",因此條件語句被計(jì)算為True。

接下來,腳本將調(diào)用process_data()并傳入data進(jìn)行修改。當(dāng)process_data執(zhí)行時(shí),將輸出一些狀態(tài)信息。最終,將輸出modified_data的值。

現(xiàn)在您可以驗(yàn)證從解釋器(或其他模塊)導(dǎo)入best_practices.py后發(fā)生的事情了。如下示例演示了這種情況:

注意,當(dāng)前結(jié)果與將條件語句添加到文件末尾之前相同。因?yàn)榇藭r(shí)__name__變量的值為"best_practices",因此條件語句結(jié)果為False,Python將不執(zhí)行process_data()。

創(chuàng)建名為main()的函數(shù)來包含要運(yùn)行的代碼

現(xiàn)在,您可以編寫作為腳本由從命令行執(zhí)行并導(dǎo)入且沒有副作用的Python代碼。接下來,您將學(xué)習(xí)如何編寫代碼并使其他程序員能輕松地理解其含義。

許多語言,如C,C++,Java以及其他的一些語言,都會(huì)定義一個(gè)叫做main()的函數(shù),當(dāng)編譯程序時(shí),操作系統(tǒng)會(huì)自動(dòng)調(diào)用該函數(shù)。此函數(shù)通常被稱為入口點(diǎn)(entry point),因?yàn)樗浅绦蜻M(jìn)入執(zhí)行的起始位置。

相比之下,Python沒有一個(gè)特殊的函數(shù)作為腳本的入口點(diǎn)。實(shí)際上在Python中可以將入口點(diǎn)定義成任何名稱。

盡管Python不要求將函數(shù)命名為main(),但是最佳的做法是將入口點(diǎn)函數(shù)命名為main()。這樣方便其他程序員定位程序的起點(diǎn)。

此外,main()函數(shù)應(yīng)該包含Python解釋器執(zhí)行文件時(shí)要運(yùn)行的任何代碼。這比將代碼放入條件語塊中更好,因?yàn)橛脩艨梢栽趯?dǎo)入模塊時(shí)重復(fù)使用main()函數(shù)。

修改best_practices.py文件如下所示:

在這個(gè)示例中,定義了一個(gè)main()函數(shù),它包含了上面的條件語句塊。之后修改條件語塊執(zhí)行main()。如果您將此代碼作為腳本運(yùn)行或?qū)?,將獲得與上一節(jié)相同的輸出。

在main()中調(diào)用其他函數(shù)

另一種常見的實(shí)現(xiàn)方式是在main()中調(diào)用其他函數(shù),而不是直接將代碼寫入main()。這樣做的好處在于可以實(shí)現(xiàn)將幾個(gè)獨(dú)立運(yùn)行的子任務(wù)整合。

例如,某個(gè)腳本有如下功能:

如果在單獨(dú)的函數(shù)中各自實(shí)現(xiàn)這些子任務(wù),您(或其他用戶)可以很容易地實(shí)現(xiàn)代碼重用。之后您可以在main()函數(shù)中創(chuàng)建默認(rèn)的工作流。

您可以根據(jù)自己的情況選擇是否使用此方案。將任務(wù)拆分為多個(gè)函數(shù)會(huì)使重用更容易,但會(huì)增加他人理解代碼的難度。

修改best_practices.py文件如下所示:

在此示例代碼中,文件的前10行具有與之前相同的內(nèi)容。第12行的第二個(gè)函數(shù)創(chuàng)建并返回一些示例數(shù)據(jù),第17行的第三個(gè)函數(shù)模擬將修改后的數(shù)據(jù)寫入數(shù)據(jù)庫(kù)。

第21行定義了main()函數(shù)。在此示例中,對(duì)main()做出修改,它將調(diào)用數(shù)據(jù)讀取,數(shù)據(jù)處理以及數(shù)據(jù)寫入等功能。

首先,從read_data_from_web()中創(chuàng)建data。將data作為參數(shù)傳入process_data(),之后將返回modified_data。最后,將modified_data傳入write_data_to_database()。

腳本的最后兩行是條件語塊用于驗(yàn)證__name__,并且如果if語句為True,則執(zhí)行main()。

在命令行中運(yùn)行如下所示:

根據(jù)執(zhí)行結(jié)果,Python解釋器在執(zhí)行main()函數(shù)時(shí),將依次執(zhí)行read_data_from_web(),process_data()以及write_data_to_database()。當(dāng)然,您也可以導(dǎo)入best_practices.py文件并重用process_data()作為不同的數(shù)據(jù)輸入源,如下所示:

在此示例中,導(dǎo)入了best_practices并且將其簡(jiǎn)寫為bp。

導(dǎo)入過程會(huì)導(dǎo)致Python解釋器執(zhí)行best_practices.py的全部代碼,因此輸出顯示解釋文件用途的信息。

然后,從文件中存儲(chǔ)數(shù)據(jù)而不是從Web中讀取數(shù)據(jù)。之后,可以重用best_practices.py文件中的process_data()和write_data_to_database()函數(shù)。在此情況下,可以利用代碼重寫來取代在main()函數(shù)中實(shí)現(xiàn)全部的代碼邏輯。

實(shí)踐總結(jié)

以下是Python中main()函數(shù)的四個(gè)關(guān)鍵最佳實(shí)踐:

結(jié)論

恭喜!您現(xiàn)在已經(jīng)了解如何創(chuàng)建Python main()函數(shù)了。

本文介紹了如下內(nèi)容:

現(xiàn)在,您可以開始編寫一些非常棒的關(guān)于Python main()函數(shù)代碼啦!

python中創(chuàng)建自定義函數(shù)的關(guān)鍵字

打開IDLE python GUI,點(diǎn)擊開始-所有程序-python2.7-IDLE python GUI,或者直接進(jìn)入dos環(huán)境,或者其他的IDLE。

請(qǐng)點(diǎn)擊輸入圖片描述

首先,創(chuàng)建一個(gè)簡(jiǎn)單的自定義函數(shù),定義為K函數(shù)。

請(qǐng)點(diǎn)擊輸入圖片描述

假如x==Kill,那么,就可以代入剛才所創(chuàng)建的K函數(shù),最后返回一個(gè)語句,x為任意字符,空白字符也可以。

請(qǐng)點(diǎn)擊輸入圖片描述

要注意的是,用def創(chuàng)建函數(shù)的時(shí)候,k(x)括號(hào)里面是不用雙引號(hào)的,而調(diào)用自定義函數(shù)的時(shí)候,在括號(hào)了就要加上雙引號(hào)。

上面的定義函數(shù)比較簡(jiǎn)單,只用了一個(gè)print輸出語句,現(xiàn)在,定義一個(gè)累加的函數(shù),就要用到while函數(shù)和if函數(shù)了。

請(qǐng)點(diǎn)擊輸入圖片描述

A函數(shù)是用來計(jì)算累加的,其中用到了一個(gè)while循環(huán)和if判斷,x為自定義變量,假如現(xiàn)在X為100,也就是說此函數(shù)計(jì)算1+2+3+...+100的和。

請(qǐng)點(diǎn)擊輸入圖片描述

Python 常用的標(biāo)準(zhǔn)庫(kù)以及第三方庫(kù)有哪些

推薦5個(gè)常用的Python標(biāo)準(zhǔn)庫(kù):

1、os:提供了不少與操作系統(tǒng)相關(guān)聯(lián)的函數(shù)庫(kù)

os包是Python與操作系統(tǒng)的接口。我們可以用os包來實(shí)現(xiàn)操作系統(tǒng)的許多功能,比如管理系統(tǒng)進(jìn)程,改變當(dāng)前路徑,改變文件權(quán)限等。但要注意,os包是建立在操作系統(tǒng)的平臺(tái)上的,許多功能在Windows系統(tǒng)上是無法實(shí)現(xiàn)的。另外,在使用os包中,要注意其中的有些功能已經(jīng)被其他的包取代。

我們通過文件系統(tǒng)來管理磁盤上儲(chǔ)存的文件。查找、刪除、復(fù)制文件以及列出文件列表等都是常見的文件操作。這些功能通常可以在操作系統(tǒng)中看到,但現(xiàn)在可以通過Python標(biāo)準(zhǔn)庫(kù)中的glob包、shutil包、os.path包以及os包的一些函數(shù)等,在Python內(nèi)部實(shí)現(xiàn)。

2、sys:通常用于命令行參數(shù)的庫(kù)

sys包被用于管理Python自身的運(yùn)行環(huán)境。Python是一個(gè)解釋器,也是一個(gè)運(yùn)行在操作系統(tǒng)上的程序。我們可以用sys包來控制這一程序運(yùn)行的許多參數(shù),比如說Python運(yùn)行所能占據(jù)的內(nèi)存和CPU,Python所要掃描的路徑等。另一個(gè)重要功能是和Python自己的命令行互動(dòng),從命令行讀取命令和參數(shù)。

3、random:用于生成隨機(jī)數(shù)的庫(kù)

Python標(biāo)準(zhǔn)庫(kù)中的random函數(shù),可以生成隨機(jī)浮點(diǎn)數(shù)、整數(shù)、字符串,甚至幫助你隨機(jī)選擇列表序列中的一個(gè)元素,打亂一組數(shù)據(jù)等。

4、math:提供了數(shù)學(xué)常數(shù)和數(shù)學(xué)函數(shù)

標(biāo)準(zhǔn)庫(kù)中,Python定義了一些新的數(shù)字類型,以彌補(bǔ)之前的數(shù)字類型可能的不足。標(biāo)準(zhǔn)庫(kù)還包含了random包,用于處理隨機(jī)數(shù)相關(guān)的功能。math包補(bǔ)充了一些重要的數(shù)學(xué)常數(shù)和數(shù)學(xué)函數(shù),比如pi、三角函數(shù)等等。

5、datetime:日期和時(shí)間的操作庫(kù)

日期和時(shí)間的管理并不復(fù)雜,但容易犯錯(cuò)。Python的標(biāo)準(zhǔn)庫(kù)中對(duì)日期和時(shí)間的管理頗為完善,你不僅可以進(jìn)行日期時(shí)間的查詢和變換,還可以對(duì)日期時(shí)間進(jìn)行運(yùn)算。通過這些標(biāo)準(zhǔn)庫(kù),還可以根據(jù)需要控制日期時(shí)間輸出的文本格式

網(wǎng)頁名稱:python創(chuàng)建函數(shù)庫(kù),Python自己創(chuàng)建函數(shù)
URL標(biāo)題:http://aaarwkj.com/article10/dssjggo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計(jì)、搜索引擎優(yōu)化、標(biāo)簽優(yōu)化、動(dòng)態(tài)網(wǎng)站微信小程序、網(wǎng)站導(dǎo)航

廣告

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

微信小程序開發(fā)
欧美日韩一区二区三区四区在线观看| 色爱区偷拍人妻中文字幕| 色呦呦一区二区三区视频| 亚洲中文字幕在线不卡| 日本岛国一区二区在线 | 日本免费一区二区三区的电影啊 | 免费在线观看一区二区三区视频 | 日韩人妻中文字幕在线视频| 中文欧美一区二区精品| 欧美日韩亚洲精品三级| 91精品国产自产在线蜜臀| 99热这里只有精品在线| 羞涩插射视频网站在线观看| 国产欧洲日本一区二区| 日韩精品综合成人欧美| 免费在线观看av日韩| 无套内谢少妇高朝毛片| 久草免费福利视频资源站| 久久免费少妇高潮99精品| 亚洲精品有码在线观看| av蜜臀一区二区三区| 国产二区三区在线播放| 国产极品嫩模在线观看91 | 麻豆av久久一区二区| 欧美大片在线观看高清| 欧美三级美国三级亚洲三级| 中文字幕熟女人妻另类癖好| 国产欧美日韩亚洲精品区| 不卡的av中文字幕在线播放| 久久人妻制服乱码中文字幕| 国产精品原创传媒在线观看| 精品视频偷拍一区二区三区| 成人午夜欧美熟妇小视频| 日韩精品在线中文字幕| 2020亚洲欧美日韩在线| 久久成人av一区二区三区| 不卡的视频在线观看| 岛国av有码高清在线观看| 中文字幕一区精品日韩| 日韩欧美一区二区三区不卡在线| 亚洲人妻一区二区三区久久精品 |