定义函数

Python中def函数return的数据 python中def return_作用域

python函数可以具备返回值,其中返回值的类型是多种多样的,可以是列表,元组,字典......

一个函数中只会有一条return语句被执行

  • 简单介绍 print 和 return 的区别,print 仅仅是打印在控制台,而 return 则是将 return 后面的部分作为返回值作为函数的输出,可以用变量接走,继续使用该返回值做其它事。
  • 函数需要先定义后调用,函数体中 return 语句的结果就是返回值。如果一个函数没有 reutrn 语句,其实它有一个隐含的 return 语句,返回值是 None,类型也是 'NoneType'

Python中def函数return的数据 python中def return_元组_02

抽奖器

 

Python中def函数return的数据 python中def return_赋值_03

 

 

 奖金计算

Python中def函数return的数据 python中def return_作用域_04

 

 

 

 自制len() :返回字符串长度

下例中a是给自变量

Python中def函数return的数据 python中def return_作用域_05

 

 

这里的'话梅花生'和'牛肉拉面'是对应参数的位置顺序传递的,所以appetizer和course被叫作【位置参数】,当有多个参数的时候,我们就必须按照顺序和数量传递,这也是最常见的参数类型。

Python中def函数return的数据 python中def return_元组_06

 

 

Python中def函数return的数据 python中def return_元组_07

 

 return:返回值 因变量

依旧回到我们的食堂,后来你决定推出不定额的优惠券,到店顾客均可参与抽奖:5元以下随机赠送一碟小菜,5-10元随机赠送一碟餐前小菜和一个溏心蛋。

那么代码就可以写成这样(注:随机功能我们可以用random模块中的random.choice()函数来):

可以看到:要返回多个值,只需将返回的值写在return语句后面,用英文逗号隔开即可。

return b, '溏心蛋'
result[n] 是第n个元组
可以同时定义多个变量,来接收元组中的多个元素

 

 

程序中的变量并不是在哪个位置都可以被使用的,使用权限决定于这个变量是在哪里赋值的
第一点:一个在函数内部赋值的变量仅能在该函数内部使用(局部作用域),它们被称作【局部变量】,如cost()函数里的variable_cost。
第二点:在所有函数之外赋值的变量,可以在程序的任何位置使用(全局作用域),它们被称作【全局变量】,如第一行的rent。
当cost()函数执行完毕,在这个函数内定义的变量都会"消失”。

 

 global:将局部变量声明为全局变量

Python中def函数return的数据 python中def return_元组_08

 

 函数的嵌套

 

 def语句后的代码块只是封装了函数的功能,如果没有被调用,那么def语句后面的代码永远不会被执行。


input

 

 

Python中def函数return的数据 python中def return_作用域_09