国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

Python中的Function定義方法第1/2頁

2020-02-23 04:44:06
字體:
來源:轉載
供稿:網友
下面就先定義一個函數:
代碼如下:
def foo():
print('function')
foo()

在上述代碼中,定義了一個名為foo的函數,這個函數沒有參數。最后一行代碼的功能是調用這個函數。這是一個函數的最簡單形式。下面來介紹一下有參數的函數:
代碼如下:
def foo():
print('function')
def foo1(a,b):
print(a+b)
foo()
foo1(1,2)

foo1就是一個有參數的函數,使用foo1(1,2)就可以調用這個有參的函數了。

在程序中,有變量存在,就會涉及到變量的作用域的問題。在Python中,變量的作用域分三個等級:global、local和nonlocal。

global:顧名思義,表示全局變量。即這個變量在python中處于最高層次上,也就是這個變量的定義層次最高,而不是在函數或類中。
local:局部變量,被定義在函數之中。
nonlocal:這是一個相對的概念。在python中,函數內部可以嵌套定義內部函數,這樣函數內部的變量相對于函數內部的內嵌函數來講就是nonlocal的。
下面,給出相關的程序來說明,首先看一下全局和局部變量:
代碼如下:
x = 1
y = 2
def foo(x):
print(x)
print(y)
print('***********')
x = 3
global y
y = 3
print(x)
print(y)
print('***********')
foo(x)
print(x)
print(y)

#************************
#運行結果
1
2
***********
3
3
***********
1
3

在上述程序中,定義了兩個全局變量x和y, 在函數foo內部,也定義了一個局部變量x。根據運行結果可知,在foo內部,變量x是真正的局部變量。因為對其所做的修改并沒有對全局變量x產生影響。另外,如果在foo內部需要使用全局變量,則需要使用global關鍵字。global y的意圖就是聲明變量y為外部聲明過的全局變量y。所以,在foo內部對y進行修改后,在foo外部仍然有影響。因為foo修改的是全局變量。
再來看一下nonlocal:
代碼如下:
def out():
z = 3
def inner():
nonlocal z
z = 4
print('inner function and z = {0}'.format(z))
inner()
print('out function and z = {0}'.format(z))
out()
#**********
#運行結果
inner function and z = 4
out function and z = 4

12下一頁閱讀全文
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 垫江县| 泗水县| 南和县| 宁晋县| 鄂伦春自治旗| 友谊县| 吴川市| 同仁县| 连云港市| 本溪| 仲巴县| 成安县| 芷江| 永登县| 永平县| 乃东县| 湖口县| 二手房| 三原县| 宁南县| 灵丘县| 沙田区| 黑龙江省| 习水县| 门头沟区| 连城县| 慈利县| 中宁县| 锡林浩特市| 渭源县| 福清市| 杭锦后旗| 民权县| 恩施市| 江都市| 林甸县| 临洮县| 菏泽市| 土默特右旗| 南康市| 吉安市|