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