当使用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同学的回答。

如果我了同学的问题,请采纳!学习愉快^_^。

0

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了


0

0 学习 · 8160 问题

查看课程