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

建设在线观看视频网站建网站优势

建设在线观看视频网站,建网站优势,做一个综合商城网站多少钱,uc浏览器手机网页版Python定义函数非常简单#xff0c;而且具有很高的灵活度。函数的参数传递方式多种多样。需要记忆和理解。 1.位置参数#xff1a; 举例#xff0c; def power(x): return x * x power#xff08;x#xff09;函数中#xff0c;x就是一个位置参数。调用时#xff0c;必须…Python定义函数非常简单而且具有很高的灵活度。函数的参数传递方式多种多样。需要记忆和理解。 1.位置参数 举例 def power(x):    return x * x powerx函数中x就是一个位置参数。调用时必须传入一个参数x。 2.默认参数 举例 def power(x, n2):     s 1 while n 0:     n n - 1     s s * x     return s 当我们调用的时候第二个参数会默认为2。例如使用power5的时候会默认计算5的平方。要计算5的三次方只需要调用power5,3即可。 使用时注意必选参数在前默认参数在后。当函数有多个参数时将变化大的参数放在前面变化小的放在后面。变化小的可以作为默认参数。 3.可变参数 顾名思义可变参数就是传入的参数个数是可变的可以是1个、2个到任意个还可以是0个。 举例   def calc(numbers):sum 0 for n in numbers: sum sum n * n return sum 但是调用的时候需要先组装出一个list或tuple calc([1, 2, 3])  output 14 如果利用可变参数调用函数的方式可以简化成这样 calc(1, 2, 3) 14 calc(1, 3, 5, 7) 84 在参数前加一个*可以将参数改变。使得number接收到的是一个元组。使调用函数时可以传入N个参数。包括0个 def calc(*numbers):sum 0 for n in numbers: sum sum n * n return sum 如果已经有一个list或者tuple如nums [1, 2, 3]  可以使用calc(nums[0], nums[1], nums[2])或者calc(*nums) *nums表示把nums这个list的所有元素作为可变参数传进去。这种写法相当有用而且很常见。 4.关键字参数   关键字参数允许你传入0个或任意个含参数名的参数这些关键字参数在函数内部自动组装为一个dict。 举例 def person(name, age, **kw):print(name:, name, age:, age, other:, kw)函数person除了必选参数name和age外还接受关键字参数kw。在调用该函数时可以只传入必选参数也可以只传入任意个数的关键字参数 person(Michael, 30) name: Michael age: 30 other: {}或者 person(Bob, 35, cityBeijing) name: Bob age: 35 other: {city: Beijing} person(Adam, 45, genderM, jobEngineer) name: Adam age: 45 other: {gender: M, job: Engineer}和可变参数类似也可以先组装出一个dict然后把该dict转换为关键字参数传进去 extra {city: Beijing, job: Engineer} person(Jack, 24, cityextra[city], jobextra[job]) name: Jack age: 24 other: {city: Beijing, job: Engineer}简化的写法: extra {city: Beijing, job: Engineer} person(Jack, 24, **extra) name: Jack age: 24 other: {city: Beijing, job: Engineer} **extra表示把extra这个dict的所有key-value用关键字参数传入到函数的**kw参数kw将获得一个dict注意kw获得的dict是extra的一份拷贝对kw的改动不会影响到函数外的extra。5.命名关键字函数对于关键字参数函数的调用者可以传入任意不受限制的关键字参数。至于到底传入了哪些就需要在函数内部通过kw检查。举例我们需要检查city和job参数 def person(name, age, **kw):if city in kw: # 有city参数 pass if job in kw: # 有job参数 pass print(name:, name, age:, age, other:, kw) 但是调用者仍可以传入不受限制的关键字参数 person(Jack, 24, cityBeijing, addrChaoyang, zipcode123456)上面可以看出我们传入的zipcode并不在参数内但是也当做other处理了。因为我们在if后面没有做操作。 如果要限制关键字参数的名字就可以用命名关键字参数例如只接收city和job作为关键字参数。这种方式定义的函数如下 def person(name, age, *, city, job):print(name, age, city, job)和关键字参数**kw不同命名关键字参数需要一个特殊分隔符**后面的参数被视为命名关键字参数。 调用方式如下 person(Jack, 24, cityBeijing, jobEngineer) Jack 24 Beijing Engineer 如果函数定义中已经有了一个可变参数后面跟着的命名关键字参数就不再需要一个特殊分隔符*了 def person(name, age, *args, city, job):print(name, age, args, city, job)命名关键字参数必须传入参数名这和位置参数不同。如果没有传入参数名调用将报错 person(Jack, 24, Beijing, Engineer) Traceback (most recent call last):File stdin, line 1, in module TypeError: person() takes 2 positional arguments but 4 were given  % 由于调用时缺少参数名city和jobPython解释器把这4个参数均视为位置参数但person()函数仅接受2个位置参数。 命名关键字参数可以有缺省值从而简化调用 def person(name, age, *, cityBeijing, job): print(name, age, city, job) 由于命名关键字参数city具有默认值调用时可不传入city参数 person(Jack, 24, jobEngineer) Jack 24 Beijing Engineer 参数组合 在Python中定义函数可以用必选参数、默认参数、可变参数、关键字参数和命名关键字参数这5种参数都可以组合使用。但是请注意参数定义的顺序必须是必选参数、默认参数、可变参数、命名关键字参数和关键字参数。 比如定义一个函数包含上述若干种参数 def f1(a, b, c0, *args, **kw): print(a , a, b , b, c , c, args , args, kw , kw) def f2(a, b, c0, *, d, **kw): print(a , a, b , b, c , c, d , d, kw , kw) 在函数调用的时候Python解释器自动按照参数位置和参数名把对应的参数传进去。 f1(1, 2) a 1 b 2 c 0 args () kw {} f1(1, 2, c3) a 1 b 2 c 3 args () kw {} f1(1, 2, 3, a, b) a 1 b 2 c 3 args (a, b) kw {} f1(1, 2, 3, a, b, x99) a 1 b 2 c 3 args (a, b) kw {x: 99} f2(1, 2, d99, extNone) a 1 b 2 c 0 d 99 kw {ext: None} 通过一个tuple和dict也可以调用上述函数 args (1, 2, 3, 4) kw {d: 99, x: #} f1(*args, **kw) a 1 b 2 c 3 args (4,) kw {d: 99, x: #} args (1, 2, 3) kw {d: 88, x: #} f2(*args, **kw) a 1 b 2 c 3 d 88 kw {x: #} 所以对于任意函数都可以通过类似func(*args, **kw)的形式调用它无论它的参数是如何定义的。  转载于:https://www.cnblogs.com/daidong805/p/9147676.html
http://www.zqtcl.cn/news/624113/

相关文章:

  • 做一个网站建设装潢设计属于什么专业
  • 水处理网站源码注册销售公司流程和费用
  • 诸城网站建设0536s整站优化seo排名点击
  • 企业建设网站需注意哪些内容苏州网站怎么做
  • 浏览器打开网站网站推广软件工具
  • 网站主题编辑工具WordPress公司网站策划方案
  • 做旅游网站选什么空间搜索引擎优化策略有哪些
  • 网站备案多少钱安全网站建设与服务的关系
  • 手机端网页设计尺寸规范优化seo排名
  • 做网站业务提成多少厦门十大装修公司排名榜
  • 为什么用开源建站wordpress rss 插件
  • 语文建设投稿网站南昌做网站的公司多不多
  • 石家庄网站建设的公司功能性质网站
  • 企业网站主页模板装饰公司名字起名大全
  • 马鞍山网站设计价格如何在微信公众号内部做网站
  • 申请网站建设经费的报告生态建设网站
  • 建网站要多少钱用自己的服务器河北工程大学网站开发成本
  • 宁波网站建站公司商务网站模块设计时前台基础设施建设不包括
  • 徐州免费网站制作怎么用阿里云服务器搭建wordpress
  • php猎奇源码 织梦新闻视频图片八卦娱乐趣事资讯门户网站模板html代码表格
  • 南通做网站优化哪家好网页策划书 网站建设定位
  • 防止访问网站文件夹绵阳 网站设计
  • 网页与网站的区别是什么东莞网站公司排名
  • 盐城市城乡和住房建设厅网站wordpress文章订阅
  • 济南网站优化wordpress文件上传到那个文件
  • 外贸网站租用外国服务器好还是自己装一个服务器好高质量外链网站
  • 珠海专门做网站成都到西安
  • 网站做1920px好吗长沙seo优化排名
  • 哈尔滨微信网站开发wordpress 视
  • wordpress 分享封面图片尺寸重庆官网优化乐育公司