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参数笔记的更多相关文章

  1. python学习笔记--Django入门0 安装dangjo

    经过这几天的折腾,经历了Django的各种报错,翻译的内容虽然不错,但是与实际的版本有差别,会出现各种奇葩的错误.现在终于找到了解决方法:查看英文原版内容:http://djangobook.com/ ...

  2. python自学笔记

    python自学笔记 python自学笔记 1.输出 2.输入 3.零碎 4.数据结构 4.1 list 类比于java中的数组 4.2 tuple 元祖 5.条件判断和循环 5.1 条件判断 5.2 ...

  3. [Python爬虫笔记][随意找个博客入门(一)]

    [Python爬虫笔记][随意找个博客入门(一)] 标签(空格分隔): Python 爬虫 2016年暑假 来源博客:挣脱不足与蒙昧 1.简单的爬取特定url的html代码 import urllib ...

  4. OpenCV之Python学习笔记

    OpenCV之Python学习笔记 直都在用Python+OpenCV做一些算法的原型.本来想留下发布一些文章的,可是整理一下就有点无奈了,都是写零散不成系统的小片段.现在看 到一本国外的新书< ...

  5. Python学习笔记(十一)

    Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...

  6. Python学习笔记(九)

    Python学习笔记(九): 装饰器(函数) 内置函数 1. 装饰器 1. 作用域 2. 高阶函数 3. 闭包 如果在一个内部函数里,对在外部作用域(但不是在全局作用域)的变量进行引用,那么内部函数就 ...

  7. Python学习笔记(七)

    Python学习笔记(七): 深浅拷贝 Set-集合 函数 1. 深浅拷贝 1. 浅拷贝-多层嵌套只拷贝第一层 a = [[1,2],3,4] b = a.copy() print(b) # 结果:[ ...

  8. Python学习笔记(八)

    Python学习笔记(八): 复习回顾 递归函数 内置函数 1. 复习回顾 1. 深浅拷贝 2. 集合 应用: 去重 关系操作:交集,并集,差集,对称差集 操作: 定义 s1 = set('alvin ...

  9. Python学习笔记(六)

    Python学习笔记(六) Ubuntu重置root密码 Ubuntu 16.4 目录结构 Ubuntu 命令讲解 1. Ubuntu重置root密码 启动系统,显示GRUB选择菜单(如果默认系统启动 ...

随机推荐

  1. How to view the DNS address assigned by DHCP

    nmcli connection show clear-corporate | grep IP4 IP4.ADDRESS[1]:                         101.8.112.9 ...

  2. c代码写数据到二进制的bin文件中

    需要将数据写入到bin文件中,打开该文件是一堆乱码,增加数据的保密性 例如:要写入的数据为一个字符串,加上若干个int型整数 #define _CRT_SECURE_NO_WARNINGS #incl ...

  3. 树莓派 连接 JY901(MPU9250) python 代码

    先说BUG,最近要做项目需要树莓派和陀螺仪,资金充足的话肯定是买一个硬件卡尔曼滤波的传感器类似JY901模块,资金不足的就买MPU6050. 网上关于MPU6050在树莓派上的代码还能用,关于JY90 ...

  4. 【二分查找】 跳石头NOIP2015提高组 D2T1

    [二分查找]跳石头NOIP2015提高组 D2T1 >>>>题目 [题目描述] 一年一度的“跳石头”比赛又要开始了! 这项比赛将在一条笔直的河道中进行,河道中分布着一些巨大岩石 ...

  5. restore not found的错误(问题2)

    最近在写gan,那么就牵扯到在一个session中加载两个图,restore的时候会有问题.如这篇文章写的(http://blog.csdn.net/u014659656/article/detail ...

  6. index.html jquery

    index.html   <!DOCTYPE html> <html lang="en"> <head> <meta charset=&q ...

  7. rem 转 px

    (function (doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? ...

  8. SQL运行优化收藏

    如何让你的SQL运行得更快(转贴) ---- 人们在使用SQL时往往会陷入一个误区,即太关注于所得的结果是否正确,而忽略了不同的实现方法之间可能存在的性能差异,这种性能差异在大型的或是复杂的数据库环境 ...

  9. HDFS的一些重要流程

    该随笔记录HDFS学习过程中遇到的比较重要的几个过程,包括:HDFS启动流程.DataNode备份流程.流程.写流程.删除流程.HDFS合并流程.这里都是从我的学习笔记中摘取出来的,如果哪里有误,还望 ...

  10. C语言按位运算符

    C语言按位运算符 二进制反码或按位取反:~ 一元运算符~是逐位将1变为0,0变为1 Eg:  ~(1001 1010) Result:(0110 0101) 按位与:& 二元运算符&是 ...