python_函数参数
1.参数的基本知识
- 任意个数
- 任意类型
def func(a1,a2,a3):
print(a1,a2,a3)
# 参数可以是任意个数和任意类型
func(1,'waf',True)
2.位置传参数(调用函数并传入参数)
实参数量和形惨数量要保持一致,并且顺序保持一致
3.关键字传参数
def func(a1,a2):
print(a1,a2)
# 实参直接给形参赋值,顺序可以调整
func(a2 = 'wdc',a1 = 123)
#关键字传参和位置传参可以混合使用
def func(a1,a2,a3):
print(a1,a2,a3)
# 但必须把位置传参放前面。关键字传参放后面
func('wdc',123,a3='rwq')
4.默认参数
# 在定义函数时,可以设置默认函数的值,a3的参数可以传可以不传
# 如果传的话,参数为传的值,如果不传则为默认值
def func(a1,a2,a3='yhf'):
print(a1,a2,a3)
func(123,'wdc')
func(123,'wdc','qweqe')
5.万能参数(打散)
*args
# *args将所有获取到的参数放到一个元组里面,*a可以接受任意个参数
def func(*args):
print(args)
func(123,'wdc')
func(123,'wdc','qweqe',(1,2,3))
def func(*args):
print(args)
# 元组里面套个元组
func((11, 22, 33, 44, 55))# a = ((11, 22, 33, 44, 55),)
# 元组前面带*可以将元组打散
func(*(11,22,33,44,55))# a = (11, 22, 33, 44, 55)
# 第一个参数给a1,其他参数给args
def func(a1,*args):
print(a1,args)
func('wdc',123,456,789)
# 这种情况下a2只能用关键字传参数
def func(a1,*args,a2):
print(a1,args,a2)
func('wdc',123,456,789,a2='yhf')
#不支持关键字传参,只支持位置传参
**kwargs
# 可接受任意个关键字参数
# **v1只能传关键字参数,生成一个字典{k1:1,k2:2}
def func(**kwargs):
print(kwargs)
func(k1 = 1,k2 = 2)
def func(**kwargs):
print(kwargs)
# 传递字典参数
func(**{'k1':1,'k2':2})
func(k1 = {'k1':1,'k2':2})
输出结果:
综合应用
# 真·万能参数
def func(*args,**kwargs):
print(args,kwargs)
func(1,2,3,k1 = 123,k2 = 'wdc')
func(*(1,2,3),k1 = 123,k2 = 'wdc')
func(*(1,2,3),**{'k1':123,'k2':'wdc'},k3 = 'yhf')
python_函数参数的更多相关文章
- Delphi_08_Delphi_Object_Pascal_基本语法_06_函数参数
发现Delphi中关于函数参数部分的内容还是比较多的,暂时说到这篇随笔为止吧,以后再继续讨论一下函数的参数部分的内容. 一 工程文件 program DefaultParameter; {$APPTY ...
- 深入理解javascript函数参数与闭包(一)
在看此文章,希望先阅读关于函数基础内容 函数定义与函数作用域 的章节,因为这篇文章或多或少会涉及函数基础的内容,而基础内容,我放在函数定义函数作用域 章节. 本文直接赘述函数参数与闭包,若涉及相关知识 ...
- php与js中函数参数的默认值设置
php函数参数默认值设置: <?phpfunction test($val=3){ echo $val."<br/>";}test(11);test();?& ...
- JS中的函数(二):函数参数(你可能不知道的参数传递)
前言: 函数分为有参有返回值,有参无返回值,无参无返回值,无参有返回值:那么对于无参数的函数你想使用函数的调用怎么办呢?如果你想封装一个代码,实现多种功能,但是形参大于实参或者实参大于形参又该如何?本 ...
- Python函数参数学习笔记
1.Python中函数参数类型可分为五种: f(x):x为位置参数: f(x,n=2):n为默认参数,调用时可以省略参数n,如f(5); f(*args):*args表示把args这个list或tup ...
- C语言指针变量作为函数参数
0x01 指针变量作为函数参数的作用是:将一个变量的地址传送到另一个函数中. 0x02 简单的例子:虽然都能实现功能,但意义不同. 正确的写法: #include <stdio.h> vo ...
- 深入理解javascript函数系列第二篇——函数参数
× 目录 [1]arguments [2]内部属性 [3]函数重载[4]参数传递 前面的话 javascript函数的参数与大多数其他语言的函数的参数有所不同.函数不介意传递进来多少个参数,也不在乎传 ...
- Python函数参数默认值的陷阱和原理深究"
本文将介绍使用mutable对象作为Python函数参数默认值潜在的危害,以及其实现原理和设计目的 本博客已经迁移至: http://cenalulu.github.io/ 本篇博文已经迁移,阅读全文 ...
- 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数
[源码下载] 速战速决 (3) - PHP: 函数基础, 函数参数, 函数返回值, 可变函数, 匿名函数, 闭包函数, 回调函数 作者:webabcd 介绍速战速决 之 PHP 函数基础 函数参数 函 ...
随机推荐
- poj1426(暴力dfs)
题目链接:https://vjudge.net/problem/POJ-1426 题意:给出n(1<=n<=200),求出全部由01组成的能整除n的正整数. 思路:此题在unsigned ...
- IDEA Java 源发行版 8 需要目标发行版 1.8
[问题记录] maven新建的一个项目,需要到一些java8的一些特性,但是在编译的时候就报错了,提示这样的错误. 我是在用二进制字面量出现的这个问题,二进制自变量是Java7的特性, 你可以这样写 ...
- 什么是阿里云SCDN
简介 SCDN(Secure Content Delivery Network),即拥有安全防护能力的CDN服务,提供稳定加速的同时,智能预判攻击行为,通过智能的调度系统将DDoS攻击请求切换至高防I ...
- RocketMQ源码学习--消息存储篇
转载. https://blog.csdn.net/mr253727942/article/details/55805876 1.序言 今天来和大家探讨一下RocketMQ在消息存储方面所作出的努力, ...
- Colossal Fibonacci Numbers! UVA - 11582(快速幂,求解)
Problem Description The i’th Fibonacci number f(i) is recursively defined in the following way: •f(0 ...
- linux 安装apache
APR and APR-Util包 下载地址:http://apr.apache.org PCRE 下载地址:http://www.pcre.org Apache Server2.4 下载地址:htt ...
- luogu P1646 [国家集训队]happiness (最小割)
高一一班的座位表是个n*m的矩阵,经过一个学期的相处,每个同学和前后左右相邻的同学互相成为了好朋友.这学期要分文理科了,每个同学对于选择文科与理科有着自己的喜悦值,而一对好朋友如果能同时选文科或者理科 ...
- 怎样查看Nginx版本号
方法一: 使用 nginx -v nginx -v 方法二: 使用 nginx -V nginx -V 注意: nginx -V 显示的是: 版本号 / 编译器版本 / 配置参数
- 怎样修改 VS Code 主题?
方法1. 点击左上角 File > Preferences > Color Theme. 方法2. 使用快捷键: Ctrl + K , Ctrl + T PS: 查询各种操作的快捷键可以 ...
- spring-boot-plus CORS跨域处理
CORS跨域处理 CORS:Cross-Origin Resource Sharing CORS是一种允许当前域(domain)的资源(比如html/js/web service)被其他域(domai ...