当前位置: 首页 > wzjs >正文

广州做网站最好的公司营销策划方案公司

广州做网站最好的公司,营销策划方案公司,网站制作 发票,国外免费服务器提供目录 5.函数 5.1创建函数、作用域 5.2 传递参数 5.3 返回值 5.4 匿名函数(lambda) 5.5 函数模块 5.函数 5.1创建函数、作用域 解释: 1.函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。 2.任何传入参数和自变量…

目录

 5.函数

5.1创建函数、作用域

5.2 传递参数

5.3 返回值

5.4 匿名函数(lambda)

5.5 函数模块


 5.函数
5.1创建函数、作用域

解释:

1.函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()。
2.任何传入参数自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
3.函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
4.函数内容以冒号起始,并且缩进。return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None

(1) 函数的创建
语法:
def 函数名 ([输入参数]):
    函数体
    [return XXX]      #return 返回值列表(也就是说不止一个),是非必须的(1) 函数的创建


语法:
def 函数名 ([输入参数]):
    函数体
    [return XXX]        #return 返回值列表(也就是说不止一个),是非必须的

def cal(a,b):  #a,b 为形式参数,形参的位置是在函数的定义处c=a+breturn c
result=cal(10,20)  # 10,20称为实际参数的值,实参的位置是函数的调用处
print(result)res=cal(a=10,b=20)  # =左侧的变量称为关键字,根据形参名进行实参传递
print(res)

结果: 30  30

(2)变量的作用域-------------->程序代码能访问到该变量的区域

# 局部变量
定义:在函数定义处的参数和函数内部定义的变量
作用范围:仅在函数内部,函数执行结束,局部变量的生命周期也结束了

在函数内定义并使用的变量、只在函数内部有效、局部变量使用global声明,这个变量就会成为全局变量

# 全局变量
定义:在函数外定义的变量或函数内部使用global关键字修饰的变量
作用范围:整个程序,程序运行结束,全局变量的生命周期才结束

# 变量的作用域
def fun(a=10,b=60):c=a+b   # c,就称为局部变量、因为c是在函数内部定义的,a,b作为形参作用域也是在函数的内部print(c)
fun()def fun1():global age  # 函数内部定义的变量,可以不 用global进行定义,将局部变量变为全局变量age=20print(age)
fun1()
print(age)

结果:

20
20

5.2 传递参数

(1)实参:位置实参、关键字实参            # 如上述代码所示,a,b为形参,10,20为实参

                                                                   ##位置实参    ,要求位置实参与形参相对应

def Introduce(name,age):print(f"我的名字是{name},今年{age}岁")Introduce("小强",18)
Introduce(18,"小强")

结果:

我的名字是小强,今年18岁
我的名字是18,今年小强岁

解释:name,age为形参,小强,18为实参

(2)关键字实参

def Introduce(name,age):print(f"我的名字是{name},今年{age}岁")Introduce(name="小强",age=18)
Introduce(age=18,name="小强")

结果:

我的名字是小强,今年18岁
我的名字是小强,今年18岁

解释:关键字实参,跟顺序无关,已经指定清楚

(3) 既含位置实参又含关键字实参

def Introduce(name,age):print(f"我的名字是{name},今年{age}岁")Introduce("小强",age=18)

注意事项
如果在传参的过程中,既有位置传参也有关键字传参,那么要遵循位置传参在前,关键字传参在后

(4)默认值参数  ========就是给形参指定默认值

def Person(age,name='小强'):     # 在定义函数的过程中,直接赋值,叫做默认值传参print("我的名字是{0},年纪为:{1}".format(name,age))
# 函数的调用
Person(18)    # 不传入任何参数,为默认值传参

注意事项:形参需要在默认值参数前

(5)个数可变的位置形参,前面加一颗星

def fun2(*args):   # 个数可变的位置形参,前面加一颗星print(args)fun2(10,20,30,40) # 返回值为元祖
fun2([10,20,30,40])#若传入的为一个列表,虽然列表内有4个元素,实际上被当成一个元祖,需要在列表前加一个*用来解包,就会生成四个元素

结果:

(10, 20, 30, 40)
([10, 20, 30, 40],)

(6)个数可变的关键字传参   前面加两颗星加上两颗星

def fun3(**args):  # 个数可变的关键字传参,前面加两颗星加上两颗星print(args)   fun3(a=11,b=22,c=33,d=44)  # 返回值为字典,解包也需要加上两颗星

结果:

(10, 20, 30, 40)
{'a': 11, 'b': 22, 'c': 33, 'd': 44}

(7)关键字形参

def fun4(a,b,*,c,d):print('a=',a)print('b=', b)print('c=', c)print('d=', d)# fun4(10,20,30,40)   # 采用位置实参传递
fun4(a=11,b=22,c=33,d=44) # 关键字实参传递
fun4(10,20,c=33,d=44)    #  前两个参数采用位置实参传递,后两个采用关键字实参传递

结果:

a= 11
b= 22
c= 33
d= 44
a= 10
b= 20
c= 33
d= 44

(8)传递列表      

# 传递列表
def lst(names):for i in names:print(f"名字叫做:{i}")
lst(["小强","小谢","小张"])

结果:

名字叫做:小强
名字叫做:小谢
名字叫做:小张

解释:把参数直接当成一个列表就行

5.3 返回值

(1) 函数的返回值       可返回任何类型的值,例如变量、列表、字典

def fun(num):odd=[] # 存储奇数even=[] # 存储偶数for item in num:if item%2==0:odd.append(item)else:even.append(item)return odd,even
result=fun([12,45,78,9,56,47])
print(result)

# 函数的返回值:
1)、如果函数没有返回值(函数执行完毕,不需要给调用处提供数据),return可以不写
2)、函数的返回值,如果是一个,直接返回类型
3)、函数的返回值,如果是多个,返回的结果为元祖
 

什么时候需要return返回值,什么情况下不需要return返回值

主要看程序的目的是什么,如果只是执行某些操作,则不需要返回值。

def hello():print ("hello")def cal(a,b):c=a+breturn chello()
print (cal(6,3))

解释:函数一就不要return返回值,而函数二就需要return返回值。


##return的作用:

1. 结束函数执行

return 语句的首要作用是结束函数的执行一旦执行到 return函数将停止执行余下的代码,并将控制权交还给调用者。

2. 返回值

return 语句后跟的表达式将被计算并返回给函数的调用者这允许函数输出数据,使得函数不仅能执行操作,还能提供操作结果。

5.4 匿名函数(lambda

概念:是指没有名字的函数,这种函数只能使用一次
使用场景:函数体只有一句代码且只有一个返回值时,可以使用匿名函数来简化

语法lambda arguments:expression         ##### result=lambda 参数列表:表达式

解释:

arguments:   参数列表,其中包含多个参数
expression:表示函数体,可以是任意表达式
lambda返回的是一个函数对象,一般将其赋值给一个变量,然后通过这个变量来调用函数

add=lambda x,y:x+y
print(add(2,3))

结果:5

注意:lambda表达式 是一个单行表达式函数,不能包含多行代码或者标准的控制但是可以使用三元表达式
  
三元表达式语法:
    <experssion1> if <condition> else <experssion2>
    解释条件成立执行表达式1条件不成立执行表达式2

5.5 函数模块

作用:避免函数类名称相冲突的问题


# 创建模块
新建一个.py文件,就是一个模块,名称尽量不要与Python自带的标准模块名称相同


1)、导入模块的两种方式
# 导入模块
import 模块名称 [as 别名]

#导入多个模块,用英文逗号隔开
import math,time,random

# 导入模块的函数或者类或变量

from 模块名称  import 函数\变量\类*             #星代表导入这个模块的所有,叫做通配符


例子:
# 导入模块的函数
from math import pow
print(math.pow(2,3))

结果:
8.0


# 导入自定义模块
例子:
from cal import cal     # cal 是自己声明的一个模块,也就是一个.py文件
print(cal(9,8))

结果:
17


第三方模块的安装和卸载

#安装
pip install 模块名称

#卸载
pip uninstall 模块名称

http://www.dtcms.com/wzjs/34428.html

相关文章:

  • 网站标题设计ps厦门seo网络优化公司
  • 做网站应怎么缴税北京网站seo服务
  • 中国最受欢迎的网站企业推广的渠道有哪些
  • 广东省建设工程质量安全监督检测总站网站外链工厂
  • 专业建设要素优化营商环境指什么
  • 驻马店做网站哪家好网络营销的原理
  • 网站设计制作视频百度搜索推广技巧
  • 自已创建网站要怎么做互动营销案例分析
  • 大型门户网站程序温州seo顾问
  • 天津武清做网站的公司太原seo培训
  • 瑞丽网站建设常州百度seo排名
  • 有做的小说网站一个产品的营销方案
  • 简单网站制作成品百度网站分析
  • 胖咯科技网站建设4414站长平台
  • 网站开发维护费计入什么科目seo优化服务是什么意思
  • 四川网站建设scyiyou东莞快速排名
  • 遵化市有做奇麟网站的吗搜索引擎营销例子
  • 网站域名提交上海seo推广平台
  • 微网站教程seo搜索引擎优化知乎
  • 关于网站建设的意见中国做网站的公司排名
  • 西安网站建设管理百度客服人工服务电话
  • 宣传片制作费用报价表win7优化极致性能
  • 承接博彩网站建设东莞网络优化哪家公司好
  • 做网站自己买服务器好还是用别人的朋友圈推广平台
  • 做单页网站需要做什么的南京关键词seo公司
  • 做室内意向图的网站夫唯seo培训
  • 签订网站建设合同seo查询seo
  • 威海网站建设 孔百度服务电话6988
  • 公司网站开发费用济南兴田德润o评价网页自动点击软件
  • 福建泉州晋江市疫情最新消息seo网络优化教程