亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

python函數(shù)定義和調(diào)用過程詳解

 更新時間:2020年02月09日 14:58:44   作者:郭雪原  
這篇文章主要介紹了python函數(shù)定義和調(diào)用過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

這篇文章主要介紹了python函數(shù)定義和調(diào)用過程詳解,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下

我們可以創(chuàng)建一個函數(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

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

函數(shù)引用的實參在函數(shù)被調(diào)用的時候引入局部符號表,因此實參總是傳值調(diào)用(該值通常指的是對象的引用,而不是該對象的值),一個函數(shù)被另一個函數(shù)調(diào)用的時候,一個新的局部符號表在調(diào)用過程中被創(chuàng)建。python的函數(shù)是以傳址的方式工作,當調(diào)用一個函數(shù)的時候,改變指針指向。

一個函數(shù)定義的時候會講函數(shù)名引入當前子都表。函數(shù)名指代的值會被解析器當作用戶定義函數(shù)的類型。這個值可以賦予其他的名字,然后其他的名字也可以被當作函數(shù)使用,這可以作為通用的重命名機制:

>>> fib
<function fib at 10042ed0>
>>> f = fib
>>> f(100)
0 1 1 2 3 5 8 13 21 34 55 89

你可能覺得fib不是一個函數(shù)而是一個方法,因為他沒有返回值,實際上,沒有帶return的函數(shù)也返回了一個值,就是none(內(nèi)建名稱),如果你想看到這個值,可以打印出來:

>>> fib(0)
>>> print(fib(0))
None

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Python+wxPython實現(xiàn)一個簡單的音樂播放器

    Python+wxPython實現(xiàn)一個簡單的音樂播放器

    這篇文章主要為大家詳細介紹了如何使用Python編程語言和wxPython模塊創(chuàng)建一個簡單的音樂播放器,文中的示例代碼講解詳細,感興趣的可以了解下
    2023-09-09
  • 淺析Python中的賦值和深淺拷貝

    淺析Python中的賦值和深淺拷貝

    Python中,對象的賦值,拷貝(深/淺拷貝)之間是有差異的,如果使用的時候不注意,就可能產(chǎn)生意外的結(jié)果。接下來通過本文給大家分享Python中的賦值和深淺拷貝,感興趣的朋友一起看看吧
    2017-08-08
  • Python 實現(xiàn)list,tuple,str和dict之間的相互轉(zhuǎn)換

    Python 實現(xiàn)list,tuple,str和dict之間的相互轉(zhuǎn)換

    這篇文章主要介紹了Python 實現(xiàn)list,tuple,str和dict之間的相互轉(zhuǎn)換,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-03-03
  • Python的信號庫Blinker用法詳解

    Python的信號庫Blinker用法詳解

    在本篇文章里小編給大家整理了一篇關(guān)于Python的信號庫Blinker用法詳解內(nèi)容,有興趣的朋友們可以學習下。
    2020-12-12
  • python中通過預先編譯正則表達式提高效率

    python中通過預先編譯正則表達式提高效率

    Python是一個很酷的語言,因為你可以在很短的時間內(nèi)利用很少的代碼做很多事情,再加上正則表達式就更能體現(xiàn)其效果,下面這篇文章主要給大家介紹了關(guān)于python中通過預先編譯正則表達式提高效率的相關(guān)資料,需要的朋友可以參考下。
    2017-09-09
  • 四個Python操作Excel的常用腳本分享

    四個Python操作Excel的常用腳本分享

    在數(shù)字化時代,很多人工作中經(jīng)常和excel打交道。本文和大家分享四個Python操作excel的腳本,讓你工作效率更高,需要的小伙伴可以參考一下
    2022-11-11
  • python文件名批量重命名腳本實例代碼

    python文件名批量重命名腳本實例代碼

    這篇文章主要給大家介紹了關(guān)于python文件名批量重命名腳本的相關(guān)資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-04-04
  • python爬蟲scrapy基于CrawlSpider類的全站數(shù)據(jù)爬取示例解析

    python爬蟲scrapy基于CrawlSpider類的全站數(shù)據(jù)爬取示例解析

    這篇文章主要介紹了python爬蟲scrapy基于CrawlSpider類的全站數(shù)據(jù)爬取示例解析,本文給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-02-02
  • python實戰(zhàn)游戲之史上最難最虐的掃雷游戲沒有之一

    python實戰(zhàn)游戲之史上最難最虐的掃雷游戲沒有之一

    這篇文章主要介紹了使用 python 實現(xiàn)掃雷游戲,不同于傳統(tǒng)過時的掃雷,今天我們用 Python 增加了新花樣,文中給大家介紹的非常詳細,需要的朋友可以參考下
    2021-09-09
  • java直接調(diào)用python腳本的例子

    java直接調(diào)用python腳本的例子

    有時需求使用JAVA直接調(diào)用python腳本,執(zhí)行一些服務器監(jiān)控的事情。 本文給出一個java直接調(diào)用python腳本的例子
    2014-02-02

最新評論