1
首先,我们需要先定义一个函数,以 def 关键词开头,后面加上函数名称和圆括号 ()。这里小编创建一个eat的函数,具体如下:
def eat():
print("I want eat mango")
注:如果函数体这里一时间不知道写什么可以先填pass用来占个位置,防止语法报错
2
编写好上面的代码点击运行我们会发现并没有输出我们想要的结果,这是为什么呢,这个是因为我们虽然定义了函数,但是没有去使用它。那么如何去使用呢,很简单,通过函数名加圆括号 ()就可以调用这个函数了。具体代码如下:
def eat():
print("I want eat mango")
eat()
注:这里我们需要注意的是eat()调用只能写在定义的函数后面,不能写在函数前面。
3
当我们通过print(函数名())来打印函数的时候我们会发现得到的结果是函数名()先调用这个函数,在返回一个值,而这个值是有return来决定的。
def eat():
print("I want eat mango")
return "不给"
print(eat() )
注:如果我们没有填return,那么返回值默认为none。并且return要放到函数体最后面,否则代码执行时遇到return就会跳出函数,后面的将不会在执行。
4
添加必备参数,在函数名后面的圆括号()里输入一个变量名。这个变量不需要定义,一般填写我们想要代表内容的名称就可以了。具体代码如下:
def eat(name):
print("%s想吃芒果"%name)
eat("小五")
注:当圆括号()里填写了变量名,那么在调用函数的时候就必须进行传参(相当于给变量名赋值),否则会出现报错。
5
如果不想通过调用时进行传参,我们可以使用函数中的默认参数,在填写变量名的时候就直接赋值。具体如下:
def eat(name,weather="冬天"):
print("%s想吃芒果,天气%s"%(name,weather))
eat("小五")
如果在调用的时候也给默认参数传参那么之前的值会被覆盖掉的。
6
有时我们可能只想先定义一个参数,不想立刻传参,这个时候就可以用不定长参数来解决这个问题了,不定长参数是通过警号加变量名(*args),具体操作如下:
def eat(*args):
print(args)
eat("春","夏","秋","冬")
注:这里的args为常规写法,当然你也自已定义名称,*args返回的是一个元组。
7
除此之外,还有一个返回值为字典的不定长参数**kwargs。并且这个不定长参数只能放在参数的最后面,否则会出现报错现象。具体如下:
8
在上面定义参数的时候我们一直都是通过位置传参的方法进行传参,也是就要传的参数名称对应定义的参数顺序。那么可以不按顺序指定某个参数进行传参吗,答案当然是可以的,我们可以通过指定参数传参来实现。例如:
def eat(weather,name): print("%s喜欢在%s吃芒果"%(name,weather))eat(name="小五",weather="冬天")
END