本文目錄一覽:
- 1、Python 我定義了一個class,裏面明明定義了函數,等到引用時卻找不到了?
- 2、Python3的問題,為什麼定義函數已經賦值,卻出錯沒有定義
- 3、python為什麼前面的函數已經聲明了一個量,然後也使用了global,可是最後到另一個函數中卻報錯找不到?
Python 我定義了一個class,裏面明明定義了函數,等到引用時卻找不到了?
不行,一個class只能有一個用於構造對象的__init__函數但python中的變量是無類型的,因此傳給__init__的參數可以是任何類型python中的函數參數在定義時可以有默認值,可以讓__init__函數接受多個參數,在後面的一些參數給出默認值的方法讓__init__接受不同個數的參數,並且執行類型檢查執行不同的代碼,用上述方法實現類的構造函數的多態性
Python3的問題,為什麼定義函數已經賦值,卻出錯沒有定義
def f(n):
print(n)
#實際調用f
a = “sss”
f(a)
在f函數中,
n是函數f的形參形式參數,
a是代入函數f的參數,叫實參實際參數。
其實這裡n只是a的一個副本。有可能有例外,比如傳遞列表
=========
作用域問題
n = “yyy”
def f():
print(n)
這裡n不屬於任何函數,n是一個全局變量,如果f中使用變量n,但是函數內找不到,就會往外查找
函數內部-函數外部-全局-內建
python為什麼前面的函數已經聲明了一個量,然後也使用了global,可是最後到另一個函數中卻報錯找不到?
你的global a放錯位置了,要放在def a1()里,這樣才能完成a的賦值。
原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/192200.html