代码:
#coding = utf-8
def people(age):
if age>0:
print("这是一个正常的人")
print(get_name())
else:
print("这是一个不正常的人")
def get_name():
print("张三")
people(10)
结果:
PS E:30.Study30.自动化测试99.零基础入门 Python Web 自动化测试10.seleniumCodePractice> & 'C:Program FilesPython38python.exe' 'c:UsersAdministrator.vscodeextensionsms-python.python-2020.6.89148pythonFileslibpythondebugpylauncher' '65176' '--' 'e:30.Study30.自动化测试99.零基础入门 Python Web 自动化测试10.seleniumCodePractice202006python_function.py'
这是一个正常的人
张三
None
PS E:30.Study30.自动化测试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错误。