Python 轻松学会写程式笔记-第5节71-测试5:Function 函式+编码练习8:练习写function1

这篇博客详细介绍了Python函数的定义、调用以及参数使用,包括默认参数、可变参数和关键字参数。通过示例解释了函数执行过程中的错误及修正方法,并探讨了函数返回值的处理。此外,还讨论了条件判断在函数中的应用,如根据输入年龄判断是否可以投票,以及根据颜色调整心情表达。最后,展示了如何检查闰年并指出原代码可能存在的问题。
摘要由CSDN通过智能技术生成

1

在这里插入图片描述

2

在这里插入图片描述
答案:
D
解析:
因为这只是function的定义,没有去呼叫(执行)它,写上 add(1, 6)才去执行它

3

在这里插入图片描述⚠️此题错了,我选了B
答案:
E
解析:
第一行最后面少了一个冒号: ,正确的话应该印出2

4

在这里插入图片描述
⚠️此题错了,我选了A
答案:
C
解析:
这个比较特殊,影片中我没有特别提出。所以请特别注意,不会印的原因是因为程式会出错,python规定参数的部分,“没预设值的” 一定要在 “有预设值的” 的前面,所以上面这个程式不行运作,请看下一题

问题 5:

現在這樣就沒錯了,有預設值的必須放在最後,先把全部沒有預設值的參數都寫完,才可以寫有預設值的。

(x沒有預設值, y有預設值)

    def hello(x, y=1):
        print(x + y)
     
    hello(3, 4)

會印出什麼
7
6
3
4
不会印

答案:
A
解析:
3被投到x, 4被投到y (雖然有預設值,但有投東西給它,所以不管預設值)

问题 6:

    def crazy(x, y=3, z=2):
        return x * 2 + y * 3 + z
     
    crazy(2)
    crazy(3, 1)
    crazy(3, 2, 0)

分別會印出什麼
12 12 12
15 11 12
15 11 14
不会印

⚠️此题错了,我选了B
答案:
D
解析:
程式码中完全没有print… function只有把算完的结果return出来而已,好啦,我们看下一题,我把print补上…

问题 7:

    def crazy(x, y=3, z=2):
        return x * 2 + y * 3 + z
     
    print(crazy(2))
    print(crazy(3, 1))
    print(crazy(3, 2, 0))

分別會印出什麼
12 12 12
15 11 12
15 11 14
不会印

答案:
B
解析:
第一个印出15因为 x=2, y=3, z=2;第二个印出11因为x=3, y=1, z=2(z没有投东西,所以用预设值);第三个x=3, y= 2, z=3 (这个很简单,三个都有投东西)

问题 8:

    def can_vote(age):
        if age >= 18:
            return True
        else:
            return False
     
    a = can_vote(20)
    print(a)

會印出什麼
True
False
不会印

答案:
A
解析:
其实这题只是让你们看看这种function的写法,这种也很常见。

问题 9:

def check_mood(color='紅'):
    mood = '好心情'
    if color == '藍':
        mood = '心情不好'
    return mood
 
print(check_mood())
print(check_mood('藍'))

分別會印出什麼

(主要讓你們見識function的各種寫法)
好心情 好心情
好心情 心情不好
心情不好 好心情
心情不好 心情不好

答案:
B
解析:
第一个印好心情因为没有投东西,所以color用预设值,所以mood就维持好心情,没有进去if的裡面去改变。

在这里插入图片描述
我的答案:

def is_leap(year):
    if year % 4 != 0:
        return False
    elif year % 100 != 0:
        return True
    elif year % 400 != 0:
        return False
    elif year % 3200 != 0:
        return True
    else:
        return False

老师答案:

    def is_leap(year):
        if year % 4 != 0:
            return False
        elif year % 100 != 0:
            return True
        elif year % 400 != 0:
            return False
        else:
            return True

ygc说老师写的有问题嘿嘿

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值