当使用print打印登陆状态时,结果为输出登录状态和none,用return就没有none,原因
来源:3-6 编程练习
唐珩溢
2019-10-04 18:37:33
def login(username,password):
# 使用if语句,判断用户名和密码为“imooc”和“123456”
if username == 'imooc' and password == '123456':
#返回登录成功
#print('登陆成功')
return '登陆成功'
# 使用else子句处理用户名和密码非“imooc”和“123456”的情况
else:
#返回请重新登录
#print('请重新输入')
return '请重新输入'
# 调用函数,向函数内传入'imooc','123456'和'mooc','123456'两组数据测试结果
print(login('imooc','12345'))
# 打印函数测试结果
print(login('imooc','123456'))
2回答
好帮手乔木
2019-10-05
同学你好:
return的作用之一是返回计算的值
print的作用是输出数据到控制端
print是将结果输出到控制台,return返回的结果不会输出到控制台(也就是不能直接打印出来)需要通过print打印出来。
同学可以参考leo_logic同学的回答。
如果我了同学的问题,请采纳!学习愉快^_^。
leo_logic
2019-10-04
(1)当函数中不存在return时,由于无返回值,通过print()调用函数时会输出None
(2)函数中存在print(),会在函数调用时直接输出相应内容
综上,可以参考下面代码调用函数部分(在#!!!位置):
def login(username,password):
# 使用if语句,判断用户名和密码为“imooc”和“123456”
if username == 'imooc' and password == '123456':
#返回登录成功
print('登陆成功')
#return '登陆成功'
# 使用else子句处理用户名和密码非“imooc”和“123456”的情况
else:
#返回请重新登录
print('请重新输入')
#return '请重新输入'
# 调用函数,向函数内传入'imooc','123456'和'mooc','123456'两组数据测试结果
login('imooc','123456') #!!!无返回的时候调用去掉print(),输出就不会存在none了
# 打印函数测试结果
login('mooc','12345') #!!!无返回的时候调用去掉print(),输出就不会存在none了相似问题