Python语言第6章 函数.pptxVIP

  • 22
  • 0
  • 约7.44千字
  • 约 52页
  • 2020-10-31 发布于江苏
  • 举报
大数据应用人才培养系列教材;;6.1.1 函数的定义; 我们以自定义一个求正方形面积的函数area_of_square为例,示例代码如下: def area_of_square(x): s = x * x return s Python不但能非常灵活地定义函数,而且本身内置了很多有用的函数,可以直接调用。;6.1.2 全局变量; 代码运行结果如下: 请输入单价:21 请输入斤数:7.5 全局变量PER_PRICE_1: 21.0 蔬菜的价格是: 157.5 在上例中,我们在定义的函数foodsprice内部去访问在函数外面定义的全局变量PER_PRICE_1,能得到期望的输入结果21。 ; 在函数内部可以去访问全局变量,但不要去修改全局变量,否则会得不到想要的结果。这是因为在函数内部试图去修改一个全局变量时,系统会自动创建一个新的同名的局部变量去代替全局变量,采用屏蔽(Shadowing)的方式,当函数调用结束后函数的栈空间会被释放,数据也会随之释放。 如果要在函数内部去修改全局变量的值,并使之在整个程序生效,采用关键字global即可。 ; 在函数内部定义的参数和变量称为局部变量,超出了这个函数的作用域局部变量是无效的,它的作用域仅在函数内部。如下所示代码: def foodsprice(per_price,number): sum_price = per_price * number return sum_price PER_PRICE_1 = float(input(请输入单价:)) NUMBER_1 = float(input(请输入斤数:)) SUM_PRICE_1 = foodsprice(PER_PRICE_1,NUMBER_1) print(蔬菜的价格是:,SUM_PRICE_1) print(局部变量sum_price的值:,sum_price) ; 代码运行结果如下: 请输入单价:12 请输入斤数:1.56 蔬菜的价格是: 18.72 Traceback (most recent call last): File G:/6_1_3.py, line 9, in module print(局部变量sum_price的值:,sum_price) NameError: name sum_price is not defined 在上例中,我们试图在函数作用域外访问函数内的局部变量sum_price,程序运行到此处时报出了NameError的异常,提示变量sum_price没有定义。; 代码运行结果如下: 请???入单价:12 请输入斤数:1.56 蔬菜的价格是: 18.72 Traceback (most recent call last): File G:/6_1_3.py, line 9, in module print(局部变量sum_price的值:,sum_price) NameError: name sum_price is not defined 在上例中,我们试图在函数作用域外访问函数内的局部变量sum_price,程序运行到此处时报出了NameError的异常,提示变量sum_price没有定义。;;函数的参数就是使得函数个性化的一个实例。代码如下所示: def MyFirstFunction(name_city): print(‘我喜欢的城市:’ + name_city) 运行结果如下: MyFirstFunction(南京) 我喜欢的城市:南京 MyFirstFunction(上海) 我喜欢的城市:上海 在上例中,我们对函数MyFirstFunction的形参name_city赋予

文档评论(0)

1亿VIP精品文档

相关文档