day10 Pyhton学习
一.昨日内容回顾
函数:
定义:对功能或者动作的封装
def 函数名(形参):
函数体
函数名(实参)
return: 返回,当程序运行到return的时候,终止函数的执行
一个函数一定拥有返回值
1.什么都不写,返回None
2.只写return,返回None
3. return 值,返回一个值
4.return 值1,值2,值3...返回多个值
参数:
形参:
在函数声明的位置的变量
1.位置参数
2.默认值参数
顺序:位置>默认值
实参:
在函数调用的地方给出的值
1.位置参数
2.关键字参数
3.混合参数
位置参数>关键字参数
传参:把实参赋值给形参的过程
二.今日主要内容
1.动态传参
形参:
1.位置参数
2.默认值参数
3.动态传参
1 *args: 动态接收位置参数
2.**kwargs:动态接收关键字参数
顺序:位置,*args,,默认值,**kwargs
*,**
def func(*args,**kwargs): 无敌传参
pass
*,** 在形参位置:聚合
在实参位置:打散
实参:
1.位置参数
2.关键字参数
3.混合参数
2.名称空间和作用域
名称空间: 保存名字用的
变量,函数,类
1.内置名称空间:python自己,print,input,len
2.全局名称空间:你写的代码从上到下
3.局部名称空间:函数,类,方法,其他模块,对象
作用域
全局作用域
内置 + 全局
局部作用域
局部名称空间
从局部找全局可以,但是从全局找局部是不可以的
globals() 查看全局作用域中的名字
locals() 查看当前作用域中的名字
3.函数的嵌套(难点)
每一层都会产生独自的名称空间
4. nonlocal global
global : 在局部引入全局的内容,可以升华一个变量为全局变量
nonlocal: 在局部,引入上一层名称空间中的变量,如果没有,继续上一层
day10 Pyhton学习的更多相关文章
- Pyhton学习——Day10
#################################################################################################### ...
- Pyhton学习——Day26
#多态:多态指的是一类事物有多种形态# import abc# class Animal(metaclass = abc.ABCMeta):# 同一类事物:动物# @abc.abstractclass ...
- pyhton 学习
官方学习文档 https://docs.python.org/3/tutorial/
- 20190320_head first pyhton学习笔记之构建发布
1.把代码nester.py放入文件夹nester中,在文件夹中再新建一个setup.py文件,文件内容如下: from distutils.core import setup setup( name ...
- Pyhton学习——Day2
Python开发IDE(工具)Pycharm.eclipse1.循环while 条件 #循环体 #条件为真则执行 #条件为假则执行break用于退出所有循环continue用于退出当前循环 2.Pyc ...
- Pyhton学习——Day28
#上下文协议:文件操作时使用with执行# with open('a.txt','w',encoding='utf-8') as f1:# with语句,为了让一个对象兼容with语句,必须在这个对象 ...
- Pyhton学习——Day27
# hasattr(obj,'name')-->obj.name# getattr(obj,'name',default = 'xxx')--->obj.name# setattr(obj ...
- Pyhton学习——Day25
#面向对象的几个方法#1.静态方法@staticmethod,不能访问类属性,也不能访问实例属性,只是类的工具包#2.类方法:@classmethod,在函数属性前加上类方法,显示为(cls)代表类, ...
- Pyhton学习——Day24
# #面向对象设计:# def dog(name,gender,type):# def jiao(dog):# print('One Dog[%s],wfwfwf'%dog['name'])# def ...
随机推荐
- 在Oracle中快速创建一张百万级别的表,一张十万级别的表 并修改两表中1%的数据 全部运行时间66秒
万以下小表做性能优化没有多大意义,因此我需要创建大表: 创建大表有三种方法,一种是insert into table selec..connect by.的方式,它最快但是数据要么是连续值,要么是随机 ...
- linux基础一(目录结构)
一.linux目录结构 1.根目录/下 bin:用户二进制文件,常用命令都在此目录下 sbin;这个目录下的linux命令通常由系统管理员使用 etc:包含所有程序所需的配置文件,以及服务的启动文件 ...
- Apache Hudi异步Compaction方式汇总
本篇文章对执行异步Compaction的不同部署模型一探究竟. 1. Compaction 对于Merge-On-Read表,数据使用列式Parquet文件和行式Avro文件存储,更新被记录到增量文件 ...
- python 3 字典
字典,是可变的无序集合,同时是一种以键值对为基本元素的可以存储各种数据类型的集合,用大括号({})表示字典的开始和结束,元素之间用(,)分隔. 键值对,由键(Key)和值(Value)组成,中间用冒号 ...
- [补题]找到原序列长度k的子序列中字典序最小的那个(单调栈)
题意 题目如题,输入序列只包含小写字母,数据范围0<k<=len<=500000. 例: 输入:helloworld 输出:ellld 题解 使用单调栈.当已删掉n-k个字符,输出栈 ...
- mariadb 数据库集群配置
mariadb集群配置(主从和多主) mariadb主从 主从多用于网站架构,因为主从的同步机制是异步的,数据的同步有一定延迟,也就是说有可能会造成数据的丢失,但是性能比较好,因此网站大多数用的是 ...
- hystrix文档翻译之概述
Hystrix是什么 在一个大型的分布式系统中,难免有些依赖服务会失败.hystrix通过容错逻辑来控制不同服务间的交互.hystrix通过隔离各服务交互节点来防止连级错误,并且提供降级功能,最终保证 ...
- VUE3.0发布,自己搞个文档网站
9月19日,尤大神发表了VUE3.0版本的演说,强大且震撼,这两天一直在找网站文档,可能还未被百度收录,未找到文档网站.后来在github上面找到了中文代码. 地址为:https://github.c ...
- Linux系统编程—信号量
大家知道,互斥锁可以用于线程间同步,但是,每次只能有一个线程抢到互斥锁,这样限制了程序的并发行.如果我们希望允许多个线程同时访问同一个资源,那么使用互斥锁是没有办法实现的,只能互斥锁会将整个共享资源锁 ...
- PHP审计基础
php核心配置 register_globals 全局变量注册开关 设置为on时,把GET/POST的变量注册成全局变量 PHP 5.4.0中移除 allow_url_include 包含远程文件 设 ...