Python传递参数的多种方式(小结)

作者:饕客 时间:2023-05-10 23:05:46 

一 位置传递

没什么好过多讲解.


# 位置传递实例:
def fun1(a,b,c):
 return a+b+c

print(fun1(1,2,3))

输出:

6

二 关键字传递

更具每个参数的名字写入函数参数


# 关键字传递
def fun2(a,b,c):
 return a+b+c

print(fun2(1,c=3,b=2))

输出:

三 参数默认值传递

给函数的输入参数设定一个默认值,如果该参数最终没有输入,则使用默认参数出入函数.


# 默认值传递
def fun3(a,b=2,c=3):
 return a+b+c

print(fun3(a = 1))

输出:

四 包裹传递

在定义函数时,我们有时候并不知道调用的时候会传递多少个参数。这时候,包裹(packing)位置参数或者包裹关键字参数来进行参数传递会非常有用。

下面是包裹位置传递的例子:


def fun4(*name):
print(type(name))
print(name)

fun4([1,2,3])
fun4((1,2,3))
fun4(1,2,3)

结果:

<class 'tuple'>
([1, 2, 3],)
<class 'tuple'>
((1, 2, 3),)
<class 'tuple'>
(1, 2, 3)

从上面的结果分析:

在fun4的参数表中,所有的参数被name收集,根据位置合并成一个元祖(tuple),这就是包裹位置传递。

 五 解包裹传递


def func1(a,b=1,*c,**d):
 print(a,b,c,d)  

l = [3,4]
dic = {'@':2,'#':3}

func1(1,2,l,dic)
print("---------**------------")
func1(1,2,*l,**dic)
func1(1,2,3,4,**dic)

运行结果:

 1 2 ([3, 4], {'@': 2, '#': 3}) {}
 ---------**------------
 1 2 (3, 4) {'@': 2, '#': 3}
 1 2 (3, 4) {'@': 2, '#': 3}

来源:https://www.cnblogs.com/taoke2016/p/8453258.html

标签:Python,传递参数
0
投稿

猜你喜欢

  • JavaScript变量声明的var、let、const详解

    2024-05-09 15:07:06
  • Python中的字符串类型基本知识学习教程

    2023-03-29 01:48:47
  • SQLServer数据库从高版本降级到低版本实例详解

    2024-01-22 17:25:54
  • js 模拟实现类似c#下的hashtable的简单功能代码

    2024-04-19 09:44:51
  • 详解Ubuntu Server下启动/停止/重启MySQL数据库的三种方式

    2024-01-26 12:42:11
  • CSS文字排版终极指南

    2010-01-19 10:30:00
  • mysql表名忽略大小写配置方法详解

    2024-01-24 11:49:19
  • pycharm2020.1.2永久破解激活教程,实测有效

    2021-11-01 15:17:57
  • python3实现字符串操作的实例代码

    2023-08-23 06:24:31
  • Mysql安装注意事项、安装失败的五个原因分析

    2024-01-22 14:16:48
  • Javascript vue.js表格分页,ajax异步加载数据

    2024-05-21 10:13:05
  • 纯JS实现AJAX局部刷新功能

    2024-05-02 17:04:38
  • 详解python编程slice与indices函数用法示例

    2021-03-23 05:13:22
  • 谈谈设计师的发展

    2009-03-17 18:20:00
  • mysql自定义函数原理与用法实例分析

    2024-01-28 01:48:20
  • Java连接数据库步骤解析(Oracle、MySQL)

    2024-01-18 09:42:22
  • python 读取串口数据的示例

    2021-08-30 11:10:26
  • Python利用pandas处理Excel数据的应用详解

    2022-02-08 16:25:02
  • Go语言并发编程 互斥锁详情

    2024-02-02 04:58:30
  • 在Python中用keys()方法返回字典键的教程

    2023-08-20 17:45:39
  • asp之家 网络编程 m.aspxhome.com