1. 非固定个数的实参----参数组,* args ,其结果将以元组的形式呈现出来

def func(*args):
print(args)
func(1,2,3,4,5) #第一种调用方式, 多个实参
func(*[1,2,3,4,5]) #第二种调用方式, 将以*[] 的形式调用
#运行结果
(1, 2, 3, 4, 5)
(1, 2, 3, 4, 5)

2. 固定个数实参,参数组, 二者结合  (a, *args)

def func2(x,*args):
print(x,args)
func2('a',1,2,3,4) #扣除固定的形参, 其他实参全归入参数组, 以元组形式列出 #结果
a (1, 2, 3, 4)

3. **kwargs 把实参(key=value)转化为字典的形式

def func3(**kwargs):
print(kwargs)
print(kwargs['name'])
print(kwargs['age'])
func3(name='Frank',age=26) #结果:
{'name': 'Frank', 'age': 26}
Frank
26

4. args, *args , **kwargs

def func5(name,*args,**kwargs):
print(name,args,kwargs)
func5('Alex',1,3,'teacher',age=18,sex='m') #结果
Alex (1, 3, 'teacher') {'age': 18, 'sex': 'm'}

5, 高阶函数: 变量可以指向函数, 函数的参数能接受变量, 那么一个函数可以接受另一个函数作为参数

def func(a, b, f):
return f(a) + f(b) b= func(1, -1, abs)
print(b) #结果
2

python 函数简介之三的更多相关文章

  1. Python 函数简介 之二

    1.当函数有多个返回值时, 其多个返回值将以元组的形式出现 def test1(): print("in the test1") return 'end' def test2(): ...

  2. Python 函数简介之一

    面向对象--->对象------>Class 面向过程--->过程------>def 函数式编程--->函数---->def 函数的介绍: def fun1(): ...

  3. python 函数简介

    一.为什么要有函数? 不加区分地将所有功能的代码垒到一起,问题是: 代码的可读性差. 代码冗余 代码可扩展性差 如何解决? 函数即工具,事先准备工具的过程是定义函数,拿来就用指的是函数调用. 什么是函 ...

  4. Python - Python函数简介

  5. 4.python函数基础

    一.函数 1.函数简介 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如print().但 ...

  6. Day03 - Python 函数

    1. 函数简介 函数是组织好的,可重复使用的,用来实现单一或相关联功能的代码段. 函数能提高应用的模块性,和代码的重复利用率.Python提供了许多内建函数,比如print():也可以自己创建函数,这 ...

  7. Python的简介以及安装和第一个程序以及用法

    Python的简介: 1.Python是一种解释型.面向对象.动态数据类型的高级程序设计语言.自从20世纪90年代初Python语言诞生至今,它逐渐被广泛应用于处理系统管理任务和Web编程.Pytho ...

  8. Python 函数返回值

    本章详细介绍 返回值: 0x 00 返回值简介 0x 01 指定返回值与隐含返回值 0x 02 return 语句位置与多条 return 语句 0x 03 返回值类型 0x 04 函数嵌套 0x 0 ...

  9. Python3 hasattr()、getattr()、setattr()函数简介

    Python3 hasattr().getattr().setattr()函数简介 一.hasattr(object, name) 判断object对象中是否存在name属性,当然对于python的对 ...

随机推荐

  1. C和Java中数组的定义

    在学习C和Java中,关于数组的定义两者不同,在初学的时候,容易产生混淆,现在将两者对比下. 1.初始化 在C语言中,关于一维数组的定义: 完全初始化  int a[5]={1,2,3,4,5},对于 ...

  2. Spring IOC之容器扩展点

    一般来说,一个应用开发者不需要继承ApplicationContext实现类.取而代之的是,Spring IoC容器可以通过插入特殊的整合接口的实现来进行扩展.下面的几点将要讲述这些整合的接口. 1. ...

  3. C#中抽象类和接口的区别

    原文:C#中抽象类和接口的区别 大家在编程时都容易把抽象类和接口搞混,下面为大家从概念上讲解抽象类和接口的区别: 一.抽象类: 含有abstract修饰符的class即为抽象类,抽象类是特殊的类,只是 ...

  4. Visual Studio 2015 & C#6.0

      Visual Studio 2015 & C#6.0 试用报告,持续更新.   昨天早上看到了.net开源的消息,我是非常兴奋的,毕竟局限于Windows的.NET经常被人唾弃.VB暂且不 ...

  5. leetcode第一题--two sum

    Problem:Given an array of integers, find two numbers such that they add up to a specific target numb ...

  6. 字符串json转换为xml xml转换json

    原文:字符串json转换为xml xml转换json // To convert an XML node contained in string xml into a JSON string XmlD ...

  7. Java编程思想笔记(第二章)

    第二章  一切都是对象 尽管Java是基于C++的,但相比之下,Java是一种更纯粹的面向对象程序设计语言. c++和Java都是杂合型语言(hybird language) 用引用(referenc ...

  8. SVN 服务端 和 客户端

    网址大全  |  EF CodeFirst  |  电视  |  MyNPOI  |  开源  |  我的皮肤  |  ASP.NET MVC4  |  前端提升  |  LINQ  |  WCF   ...

  9. Linux网络编程(六)

    网络编程中,使用多路IO复用的典型场合: 1.当客户处理多个描述字时(交互式输入以及网络接口),必须使用IO复用. 2.一个客户同时处理多个套接口. 3.一个tcp服务程序既要处理监听套接口,又要处理 ...

  10. CSS3/jQuery自定义弹出窗口

    简单演示一下,精简了演示效果和css样式文件,更利于在项目中的实际应用 引入style.css   index.js <!DOCTYPE HTML PUBLIC "-//W3C//DT ...