3-7.python函數的基礎調用之None異常2


代碼:

#coding = utf-8
def people(age):
    if age>0:
        print("這是一個正常的人")
        print(get_name())
    else:
        print("這是一個不正常的人")

def get_name():
    print("張三")

people(10)

結果:

PS E:\30.Study\30.自動化測試\99.零基礎入門 Python Web 自動化測試\10.seleniumCodePractice>  & 'C:\Program Files\Python38\python.exe' 'c:\Users\Administrator\.vscode\extensions\ms-python.python-2020.6.89148\pythonFiles\lib\python\debugpy\launcher' '65176' '--' 'e:\30.Study\30.自動化測試\99.零基礎入門 Python Web 自動化測試\10.seleniumCodePractice\202006\python_function.py'
這是一個正常的人
張三
None
PS E:\30.Study\30.自動化測試\99.零基礎入門 Python Web 自動化測試\10.seleniumCodePractice>

原因分析:

None在python是一個空類型,這里為什么打印一個空類型呢?

在python里調取方法時,會首先執行方法里的方法,即print()方法調取get_name()時,先執行get_name()里的print("張三"),然后print()方法再執行get_name(),但是get_name()方法沒有返回任何有效值,所以就返回None.

對應方法:

1.在被調取的方法里返回一個值/對象

 

 注意:不要寫成下記情況:

 

 

2.如果被調取的方法沒有返回值/對象的話,可以直接使用該方法

 

補充:

下記方法的調用和代碼:塊里的調用get_name()是一樣的邏輯,所以也會有None錯誤。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM