[Day_25]函式与递回_(4)

函式的输入与输出

函式的输入

函式中有预设值的输入参数一定放在後面,预设值要式不可以变的常数,不能为串列或字典等可以修改的资料结构

#input
def f(s,count=1):
    print(s*count)
f('HI')

#output
HI

可以经由函式呼叫输入新的数值取代原预设值,如以下范例

#input
def f(s,count=1):
    print(s*count)
f('HI',3)

#output
HIHIHI

函式内参数的对应,若未指定名称会依照顺序填入,例如:自订函式func如下。

def func(x,y,z=9):
    print('x=',x,'y=',y,'z=',z)

若以func(1,2)进行呼叫,会印出「x=1 y=2 z=9」,可以看出依照顺序放入对应的参数;若以func(1,2,3)进行呼叫,会印出「x=1 y=2 z=3」,可以看出依照顺序放数对应的参数,且预设值被输入值取代。若以func(x=3,y=4)进行呼叫,会印出「x=3 y=4 z=9」,可以指定参数与输入值的对应,这时就可以不用依照顺序,例如以func(y=5,x=6)进行呼叫,会印出「x=6 y=5 z=9」,指定参数与输入值的对应,输入值的对应,输入值与参数的对应顺序可以顺序可以不同。以func(x=3,z=6)进行呼叫,会发生TypeError,因为参数y没有输入值,没有预设值的参数一定要有输入值。

#input
def func(x,y,z=9):
    print('x=',x,'y=',y,'z=',z)
func(1,2)
func(1,2,3)
func(x=3,y=4)
func(y=5,x=6)
#func(x=3,z=6)

#output
x= 1 y= 2 z= 9
x= 1 y= 2 z= 3
x= 3 y= 4 z= 9
x= 6 y= 5 z= 9

今天先到这边喔
明天见~~~
/images/emoticon/emoticon01.gif


<<:  Day26_再次来看个资法~2021/10/09

>>:  [Day24] Event Capture, Propagation, Bubbling and Once

Day 25 : 可解释的 AI - Explain AI (XAI)

AI 黑箱作业已经被诟病许久,因为 AI 类神经网络的复杂性不似机械学习的树状结构、线性结构容易理...

全端入门Day07_何谓全端之後端中篇

昨天介绍了後端程序语言,但那些程序语言其实都有自己的框架 今天就来介绍什麽是框架,为什麽要用框架 在...

【27】遇到不平衡资料(Imbalanced Data) 时 使用 Undersampling 解决实验

Colab连结 不平衡资料集(Imbalanced Dataset) 指的是当你的资料集中,有某部分...

Day 12 - Spring Boot & MyBatis

MyBatis 可以简单的使用注解或XML 的方式进行配置和对映,通过将引数对映到配置的SQL 形成...