Python参数笔记
Python参数
1. 普通参数
- 必须要传入和定义时个数相同的参数
def miao(acfun, bilibili):
print(acfun, bilibili) miao(11, 22) >>>11 22
2. 带有默认参数
- 参数赋有默认值,使用时可以不传默认值,但好像默认值必须是最后一个参数?
def miao(acfun, bilibili = 000):
print(acfun, bilibili) miao(11) >>>11 000
1. * 带参数
- 表示可以传无限的参数,传入的参数会自动拼接,当不传参数时会拼成空元祖(tuble)
栗子:
不穿参数 ---> ()
传一个参数11 ---> (11,) ---> 逗号用于区别元祖跟普通的常量
传两个参数11,22 ---> (11,22)
※tuble( )与list[ ]的区别
- tuble一旦定义了就不能修改, list可以在后续的操作中进行数据的修改
def miao(*acfun):
print(acfun) miao(11, 22 ,33 ,44) >>>(11, 22, 33, 44)
2. ** 带参数
- 表示可以传无限的参数,传入的参数会自动拼接成map(python中称为字典)
栗子:
不穿参数 ---> {}
传一个参数a = 11 ---> {'a':11}
传两个参数a = 11, b = 22 ---> {'a': 11, 'b': 22}
def miao(**acfun):
print(acfun) miao(acfun = 11, bilibili = 22 ,cilicili = '' ,dilidili = '') >>>{'acfun': 11, 'bilibili': 22, 'cilicili': '', 'dilidili': ''}
3. *, 带参数——具名参数
- 后面所有的参数的参数名都会被限定,必须长得一模一样呢
下面的bilibili和cilicili就是具名参数
def miao(acfun, *, bilibili, cilicili):
print(acfun)
print(bilibili)
print(cilicili) miao(111,bilibili=222,cilicili=333) >>>111
>>>222
>>>333
※第一个参数前面有1个*时,后面的所有参数都是具名参数
下面栗子中的bilibili和cilicili也都是具名参数,如果给他们乱改名字,他们是会生气变红的
def miao(*acfun, bilibili, cilicili):
print(acfun)
print(bilibili)
print(cilicili) miao(111,bilibili=222,cilicili=333) >>>111
>>>222
>>>333
4. self参数
- 在类中的方法会有该参数,相当于java类方法中的this~
class miaomiao(object):
def __init__(self):
self.param1 =123
def __str__(self):
print("I love acfun"); MM = miaomiao()
print(MM.param1)
print(MM) >>>I love acfun
Python参数笔记的更多相关文章
- python学习笔记--Django入门0 安装dangjo
经过这几天的折腾,经历了Django的各种报错,翻译的内容虽然不错,但是与实际的版本有差别,会出现各种奇葩的错误.现在终于找到了解决方法:查看英文原版内容:http://djangobook.com/ ...
- python自学笔记
python自学笔记 python自学笔记 1.输出 2.输入 3.零碎 4.数据结构 4.1 list 类比于java中的数组 4.2 tuple 元祖 5.条件判断和循环 5.1 条件判断 5.2 ...
- [Python爬虫笔记][随意找个博客入门(一)]
[Python爬虫笔记][随意找个博客入门(一)] 标签(空格分隔): Python 爬虫 2016年暑假 来源博客:挣脱不足与蒙昧 1.简单的爬取特定url的html代码 import urllib ...
- OpenCV之Python学习笔记
OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...
- Python学习笔记(十一)
Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...
- Python学习笔记(九)
Python学习笔记(九): 装饰器(函数) 内置函数 1. 装饰器 1. 作用域 2. 高阶函数 3. 闭包 如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就 ...
- Python学习笔记(七)
Python学习笔记(七): 深浅拷贝 Set-集合 函数 1. 深浅拷贝 1. 浅拷贝-多层嵌套只拷贝第一层 a = [[1,2],3,4] b = a.copy() print(b) # 结果:[ ...
- Python学习笔记(八)
Python学习笔记(八): 复习回顾 递归函数 内置函数 1. 复习回顾 1. 深浅拷贝 2. 集合 应用: 去重 关系操作:交集,并集,差集,对称差集 操作: 定义 s1 = set('alvin ...
- Python学习笔记(六)
Python学习笔记(六) Ubuntu重置root密码 Ubuntu 16.4 目录结构 Ubuntu 命令讲解 1. Ubuntu重置root密码 启动系统,显示GRUB选择菜单(如果默认系统启动 ...
随机推荐
- [数据结构] 2.7 Heap 堆
* 注: 本文/本系列谢绝转载,如有转载,本人有权利追究相应责任. 1.堆是什么? (如图所示是一个小堆) 1)堆是一颗完全二叉树,它的最后一层不是满的,其他每一层都是满的,最后一层从左到右也没有空隙 ...
- HBase Block Cache(块缓存)
Block Cache HBase提供了两种不同的BlockCache实现,用于缓存从HDFS读出的数据.这两种分别为: 默认的,存在于堆内存的(on-heap)LruBlockCache 存在堆外内 ...
- MongoDB数据查询 --MongoDB
1.插入测试数据 use flower db.goods.insert({'goods_name':'Hyacinth',price:10,num:800}) db.goods.insert({goo ...
- mybatis多参数传递,延迟加载,缓存,注解开发
1.Mybatis的多参数传递方式 需求:更具id 和 名字查询用户: select * from user where id = ? and name = ?: 1):QueryVo 或者 User ...
- ubuntu nginx ssl 证书配置
前几天自己用 egg.js 写了个 api 接口,然后把它部署到服务器上.服务器是ubuntu 16.04 + nginx:因为要用到https,然后今天实践了一下如何配置https. 关于htt ...
- MySQL数据库(2)
上一篇我们讲述过MySQL创建数据库,数据表的内容,其中涉及到了几个约束: NOT NULL 非空约束 PRIMARY KEY 主键约束 UNIQUE KEY 唯一约束 其实还有两个约束 ...
- javascript高级程序设计第3版——第5章 引用类型
- mysql5.7 for windows二进制安装及配置
1)mysql5.7二进制软件下载 下载地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads 下载软件:mysql-5.7.25-wi ...
- mongodb数据库操作方法
// Schema.Model.Entity或者Documents的关系请牢记,Schema生成Model,Model创造Entity,Model和Entity都可对数据库操作造成影响,但Model比 ...
- leetcode 链表相关
1.给出两个 非空 的链表用来表示两个非负的整数.其中,它们各自的位数是按照 逆序 的方式存储的,并且它们的每个节点只能存储 一位 数字. 如果,我们将这两个数相加起来,则会返回一个新的链表来表示它们 ...