今天接着来说那个新的大知识点,函数,函数中是可以传递一个数值的,这个数值简称为参数,对于参数,他可以是任意个数和任意类型(数据类型)。参数的其中一种有位置传参,函数中的参数有几个,那么就要传入几个,传入的参数简称形参,还有一个是关键字参数,比如在传入是指定是哪个参数传入,a1 = 9·······关键字参数和位置参数可以混合使用,但位置参数一定要在前面,关键字参数在后面,两个参数个数之和等于形参,还有默认参数,在函数的参数中,其中有参数已经指定了一个数值,那么当你没有传入形参时,自动用这个默认参数代入函数中,当有形参传入,则使用形参。还有一个叫做万能参数用*args表示,代表可以接受n个参数传入,传出则为元祖,如果输入为func(*(11,22,33)),则输出为(11,22,33),其余都添加到元组中,这个主要用于不知道需要传入的参数有多少的时候,但是这个不支持关键字传参,只支持位置传参,位置传参有万能的,关键字传参当然也有万能的,在函数中,func(**kwargs)就表示所有的关键字传参,这个传参会形成一个字典存在函数中,当一个字典带着**传入期中时,输出还是为自己本来的字典比如func(**{‘k1’:1}),当然这个万能参数也是只能传关键字参数,所以,后面就有一个可以结合起来用的def func(*args,**kwargs),这个组合堪称无敌,既可以接受任意参数的数量,又可以传入位置参数和关键字参数。普遍用的也就是这个了。之后还有一个函数的作用域和函数的嵌套,作用于就好比整个函数在一个楼道中,从头开始慢慢往下走其中函数就是一个个的门,全部都要遵循从上到下的原则,一个函数相当于一个作用域,作用域和作用域之间互不干扰,在作用域中寻找一个参数如果没有,就去上一级找,找到全局作用域的时候再没有就报错,当然在一个函数中,是可以嵌套一个函数的,自己优先在自己这里找,然后去上级找,但是上级不能进函数的作用域中找,当然函数作用域中也是有一些可以修改上级甚至全局作用域的权限,比如global xxx xxx = xx,就可以修改全局作用域中的参数了,但是对自己的上级是不做任何操作的,既然全局的都可以改,当然能改上级的,nonlocal就是只改上级的。感觉小作用域比大作用域的权限还高。学习作用域可以让你在看代码的时候分清楚究竟是哪一步先开始到哪一步结束。方便自己阅读代码。

python一直放弃到双数的day10的更多相关文章

  1. Python距离放弃拉近的day03

    新的一天,依旧是内容补充,补充了数学没有的运算符,in和not in,就是判断in前面的东西是不是在后面的数据中,然后新课讲了平常最常用的字符串的方法,引号的里面全部都是字符串,在其中就会又如何判断这 ...

  2. Python距离放弃又近了Day02

    今天,来时大概复习了上一天讲过的一些计算机基础和简单数据类型和if语句,第二天就来了循环,还是个while的死循环,突然想到还是电脑好,不管循环多少次,只要电脑不崩溃,就能一直精准的算下去,这就和人不 ...

  3. python(从放弃到从头开始)

    本节内容 Python介绍 发展史 Python 2 or 3? Hello World程序 变量 用户输入 .pyc是个什么鬼? 数据类型初识 数据运算 表达式if ...else语句 表达式for ...

  4. python从放弃到放弃

    本文目录 第一篇:python基础 第二篇:数据类型 第三篇:文件处理 第四篇:函数 第五篇:模块与包 第六篇:常用模块

  5. 关于Python编程的一些问答

    关于Python编程的一些问答 导语 大约1个月前,oschina.net和华章图书一起合作做了一个活动:OSC第51期高手问答--聊聊python那些事,来推广我参与撰写的书<编写高质量代码: ...

  6. pythonのgevent同步异步区别

    #!/usr/bin/env python from urllib import request import gevent from gevent import monkey import time ...

  7. Python的浮点数损失精度问题

    本篇讨论的现象可以从下面这段脚本体现出来: >>> x = 0.0 >>> for i in range(10): x += 0.1 print(x) 0.1 0. ...

  8. 英语专业出身也要走向python

    这两年一直徘徊在学习python和放弃python的道路上不断的徘徊,今年终于没有在蹉跎下去,选择了开始新的自我挑战,零基础开始学习python. 作为一名英语专业毕业的文科生,学习编程还是相对有些困 ...

  9. Python的自增运算符

    今天在写一个合并两个有血list的时候,使用了while循环,不自觉的使用了i++,自测的时候发现有语法错误,还检查了好几遍,觉得应该没啥错误啊,后来google了一把,恍然大悟,原来Python早就 ...

随机推荐

  1. 如何在Microsoft Word里面插入图片作为背景/封面?

    Stay hungry, Stay foolish.     如何在Word里面插入图片作为背景?其实很简单,开门见山,我们只需要这几步即可! 1.第一步,打开要插入图片的Word 2.第二步,插入图 ...

  2. 做自己的CEO

    目录 前言 做自己的CEO 做自己的CEO是指什么 为什么要做自己的CEO 如何做自己的CEO 定义自己的愿景.使命和价值观 愿景 (Vision) 使命 (Mission) 价值观 (Values) ...

  3. 【死磕 Spring】----- IOC 之 获取 Document 对象

    原文出自:http://cmsblogs.com 在 XmlBeanDefinitionReader.doLoadDocument() 方法中做了两件事情,一是调用 getValidationMode ...

  4. #Java学习之路——基础阶段(第十一篇)

    我的学习阶段是跟着CZBK黑马的双源课程,学习目标以及博客是为了审查自己的学习情况,毕竟看一遍,敲一遍,和自己归纳总结一遍有着很大的区别,在此期间我会参杂Java疯狂讲义(第四版)里面的内容. 前言: ...

  5. springboot~基于单元测试的mongodb

    添加对应版本的包 testCompile('de.flapdoodle.embed:de.flapdoodle.embed.mongo:1.46.0') 在测试之前,它会根据你的操作系统去下载当前的m ...

  6. DotNetCore跨平台~聊聊中间件

    回到目录 在进行.net core平台之后,我们如果希望在请求过程中添加一些事件是非常容易的,你可以把这些事件做成一个中间件Middleware,然后这些中间件就会以Http pipeline的管道方 ...

  7. DotNetCore跨平台~认识环境和环境变量

    回到目录 环境 环境,对于开发来说就是部署的一种场景,你可以是调试场景,测试场景,生产场景,当然还可以有很多其它的场景,只要你的项目需要就可以自定义,微软帮我们定义了三种标准的环境变量,下面来说一下. ...

  8. 机器学习之KNN原理与代码实现

    KNN原理与代码实现 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/9670187.html 1. KNN原理 K ...

  9. ado.net的简单数据库操作(二)之封装SqlHelperl类

    今天我书接上回,接着昨天的ado.net的数据库操作的相关知识来讲哈! 从上篇文章给出的实例来看,你一定会发现,操作数据库其实还挺麻烦的,就连一个最简单的数据库操作语句都要包括 定义数据库连接字符串. ...

  10. .net core api +swagger(一个简单的入门demo 使用codefirst+mysql)

    前言: 自从.net core问世之后,就一直想了解.但是由于比较懒惰只是断断续续了解一点.近段时间工作不是太忙碌,所以偷闲写下自己学习过程.慢慢了解.net core 等这些基础方面学会之后再用.n ...