def   是函数的关键字,Python解释器一旦执行到def,默认不执行

def li():
n = 8
n +=1
print(n)
li()
li2 = li
li2()

结果:

9
9

return():用于函数返回值,用于中断函数操作

参数可以是数字,字符串,列表,元组,字典

默认参数:默认参数Python规定放在普通参数后面

def li(a1,a2=11)
print(a1,a2)
li(111)
li(111,222)

结果:

111 11
111 222

指定参数:指定后按指定参数的顺序执行

def li(a1,a2)
print(a1,a2)
li(a2=32,a1=8)

结果:

8 32

动态参数

  默认元组: 

def show(*arg):
print(arg,type(arg))
show(33)
show(11,33,66,44,66)

结果:

(33,) <class 'tuple'>
(11, 33, 66, 44, 66) <class 'tuple'>

  默认字典:

def show(**arg):
print(arg, type(arg))
show( n1=123, n2= 'hello',n3=5,)

结果:

{'n1': 123, 'n2': 'hello', 'n3': 5} <class 'dict'>

  默认先插入元组,再插入字典:

def show(*args, **kwargs):
print(args, type(args))
print(kwargs, type(kwargs)) show(11, 22, 44, 55, n1=88, n2='presly')
l = [11, 22, 44, 55,]
d = {'n1': 123, 'n2': 'hello'}
show(l, d)
show(*l,**d)

结果:

(11, 22, 44, 55) <class 'tuple'>
{'n1': 88, 'n2': 'presly'} <class 'dict'>
([11, 22, 44, 55], {'n1': 123, 'n2': 'hello'}) <class 'tuple'>
{} <class 'dict'>
(11, 22, 44, 55) <class 'tuple'>
{'n1': 123, 'n2': 'hello'} <class 'dict'>

  动态参数实现 字符串格式化:

例:

# s1 = '{0} is {1}'                       # *args的传参
# l = ['Presly', 'lovely']
# # result = s1.format('Presly', 'lovely')
# result = s1.format(*l)
# print(result)
s1 = '{name} is {acter}' # **kwargs的传参
d = {'name': 'Presly', 'acter': 'lovely'}
result = s1.format(**d)
print(result)

结果:

Presly is lovely

Python_函数_参数的更多相关文章

  1. Python基本语法_函数_参数的多类型传值

    前言 上一篇主要介绍了Python函数的参数类型,本篇继续学习Python函数多类型传值. 目录 前言 目录 软件环境 参数的多类型传值 向函数传递Tuple 向函数传递List 向函数传递Dicti ...

  2. Python_函数_复习_习题_24

    # 函数 # 可读性强 复用性强# def 函数名(): # 函数体 #return 返回值# 所有的函数 只定义不调用就一定不执行 #先定义后调用 #函数名() #不接收返回值#返回值 = 函数名( ...

  3. python_函数默认参数设计

    >>> def printMax(a,b): if a>b: print(a,'is the max') else: print(b,'is hte max') >> ...

  4. Python_函数的初识、函数的返回值、函数的参数

    1.函数的初识 def关键字 空格 函数名(与变量名命名规则相同):英文冒号 函数体 执行函数:函数名+() 函数是以功能为导向的. def login(): pass def register(): ...

  5. C++ 函数特性_参数默认值

    函数参数默认值写法 有默认参数值的参数必须在参数表的最右边 ,) // 这是正确的写法 , int k) // 这是错误写法 先声明,后定义 在写函数时要先在代码前面声明,然后再去定义. 函数默认参数 ...

  6. Python基本语法_函数属性 & 参数类型 & 偏函数的应用

    目录 目录 前言 软件环境 Python Module的程序入口 函数的属性 Python函数的创建 函数的参数 必备参数 缺省参数 命名参数 不定长参数 匿名参数 偏函数的应用 前言 Python除 ...

  7. 多测师讲解python _函数中参数__高级讲师肖sir

    函数中讲解参数: 形参和实参的认识 函数无参数的调用 函数单个参数的调用 函数多个参数的调用 # #调试函数给默认参数传新值,则函数使用新值 # 注意:当多种参数同时出现在函数中,默认参数要放在最后的 ...

  8. (转)Free函数的参数一定要是malloc返回的那个指针

    Free函数的参数一定要是malloc返回的那个指针   之前认为只要free的参数在malloc分配的区域之内就可以了, 现在发现不对的.在嵌入式里分配堆都是按照块来的,只要在这个块内系统就能识别, ...

  9. python中函数的参数

    函数参数(一) 思考一个问题,如下: 现在需要定义一个函数,这个函数能够完成2个数的加法运算,并且把结果打印出来,该怎样设计?下面的代码可以吗?有什么缺陷吗? def add2num(): a = 1 ...

随机推荐

  1. eclipse 迁移项目 乱码

    eclipse 迁移项目总是乱码问题,网上解决都无非是把workspace.项目.文件等改成utf-8,但总是不好使,因为原来有的文件类型还是要改成原来的编码格式,可以使用文本工具如notepad打开 ...

  2. LabVIEW 获取本机多个ip地址

    图 1   网上见了好多设置的,都没讲清楚,在这里整理一下本机ip地址的获取问题.关键在"字符串向ip地址转换"函数的设置上面,见下图2,选择多输出就能获取本机的多个ip地址,若不 ...

  3. 51Nod--1384全排列

    1384 全排列 基准时间限制:1 秒 空间限制:131072 KB 分值: 0 难度:基础题 收藏 关注 给出一个字符串S(可能又重复的字符),按照字典序从小到大,输出S包括的字符组成的所有排列.例 ...

  4. java结合testng,利用mysql数据库做数据源的数据驱动实例

    上一篇我们介绍用如何用yaml结合testng做数据驱动,就又想来个数据库的参数化 备注:@DataProvider的返回值类型只能是Object[][]与Iterator<Object> ...

  5. 基于官方mysql镜像构建自己的mysql镜像

    参考文章:https://www.jb51.net/article/115422.htm搭建步骤 1.首先创建Dckerfile: 1 2 3 4 5 6 7 8 9 10 11 12 FROM my ...

  6. Python 队列

    import multiprocessing import time if __name__ == '__main__': # 创建消息队列 # 3: 表示消息队列最大个数 queue = multi ...

  7. SVG前戏—让你的View多姿多彩

    什么是SVG SVG的全称是Scalable Vector Graphics,叫可缩放矢量图形.是一种基于可扩展标记语言(XML).它和位图(Bitmap)相对,SVG不会像位图一样因为缩放而让图片质 ...

  8. Java中关于string的些许问题及解析

    问题一:String 和 StringBuffer 的区别JAVA 平台提供了两个类: String 和 StringBuf fer ,它们可以储存和操作字符串,即包含多个字符的字符数据.这个 Str ...

  9. Confluence 6 数据库表-杂项(Miscellaneous)

    这些部分是一些其他的表格,这些表格有必要在这里提及下能帮你更好的了解系统. os_propertyentry 有关实体和属性相关的特性. bandana 所有的持久层.这个表格包含的的内容有用户设置和 ...

  10. caffe2安装

    参考http://blog.csdn.net/Andy965/article/details/70808909?locationNum=5&fps=1 建议将make 和make instal ...