python函数手册 stata_python函数参数与文档_weixin_39794385的博客-程序员宅基地

技术标签: python函数手册 stata  

函数参数

1.位置参数

定义形式:

deffunc(p1, p2, ...):pass

实例:

#位置参数,调用时传入的实参必须与形参一一对应(包括个数与位置)

defintroduce(name, age):print("I am {0}, and I am {1} years old.".format(name, age))

introduce("zhangsan", 18)

运行结果:

I am zhangsan, and I am 18 years old.

2.关键字参数

定义形式与位置参数相同

实例:

#正确的调用方式

introduce(name="lisi", age=20)

introduce(age=20, name="lisi")

introduce("lisi", age=20)

运行结果:

I am lisi, and I am 20 years old.

I am lisi, and I am 20 years old.

I am lisi, and I am 20 years old.

ps. 函数定义形式都是一样的,只是在调用的时候传入实参的时候形式不同:

1)若实参的个数与位置和形参都一样,则可以不必声明对应的形参名称。

2)若传参时顺序不同或想给后面的默认参数传参,则必须声明实参传给了哪个形参。

3.默认参数

定义形式:

默认参数必须位于普通参数的后面

def func(p1, p2=v2, p3=v3, ...):

func body

实例:

def introduce2(name, age, sex="boy", address="shanghai"):print("I am {0}, a {2}, and I am {1} years old, living in {3}".format(name, age, sex, address))

introduce2("zhangsan", 18)

introduce2("zhangsan", 18, "girl")

introduce2("zhangsan", 18, address="beijing")

introduce2(sex="girl", name="zhangsan", age=18)

运行结果:

I am zhangsan, a boy, and I am 18 years old, living in shanghai

I am zhangsan, a girl, and I am 18 years old, living in shanghai

I am zhangsan, a boy, and I am 18 years old, living in beijing

I am zhangsan, a girl, and I am 18 years old, living in shanghai

4.收集参数

当你不知道会有多少个参数传入进来的时候,可以使用收集参数将他们全部传入进来,也可以不传参。

1)普通收集参数

定义形式:

def func(*args):

func body

实例:

def introduce3(*args):print(type(args))print('Hello everyone, I am going to tell you something about myself')for i inargs:print(i)print('位置收集参数'.center(50,"#"))

introduce3()print('*'*30)

introduce3("zhangsan", 18)print('*'*30)

introduce3("zhangsan", 18, "boy")

运行结果:

######################位置收集参数######################

Hello everyone, I am going to tell you something about myself

******************************

Hello everyone, I am going to tell you something about myself

zhangsan

18

******************************

Hello everyone, I am going to tell you something about myself

zhangsan

18

boy

2)关键字收集参数

定义形式:

def func(**kwargs):

func body

实例:

print('关键字收集参数'.center(50,"#"))def introduce4(**kwargs):print(type(kwargs))for k,v inkwargs.items():print(k,'-----',v)

introduce4()print('*'*30)

introduce4(name="lisi", age=18, sex="man", hobby="music")

运行结果:

#####################关键字收集参数######################

******************************

name ----- lisi

age ----- 18

sex ----- man

hobby ----- music

5.解包参数

当你的普通参数位于一个列表中,或者关键字参数位于一个字典中,直接传入列表或字典只能代表一个参数,可以使用解包参数将它们的每一个元素传给不同的参数。

1)列表解包参数

定义形式:

调用函数时:func(*list)

实例:

print('列表解包参数'.center(50,"#"))

zhangsan= ["zhangsan", 18, "boy"]

introduce2(*zhangsan)print('*'*50)

introduce3(*zhangsan)

运行结果:

######################列表解包参数######################

I am zhangsan, a boy, and I am 18 years old, living in shanghai

**************************************************

Hello everyone, I am going to tell you something about myself

zhangsan

18

boy

2)字典解包参数

定义形式:

调用函数时:func(**dict)

实例:

print('字典解包参数'.center(50,"#"))

lisi={'name':'zhangsan','age':18,'sex':'man','hobby':'reading'}

introduce4(**lisi)

运行结果:

######################字典解包参数######################

name ----- zhangsan

age ----- 18

sex ----- man

hobby ----- reading

6.参数的混合使用

定义与调用顺序:普通位置参数,普通收集参数,默认参数,关键字收集参数

实例:

def stu(name, age, *args, sex="boy", **kwargs):print('Hi guys, I am happy to tell you about myself, my name is {0}, a {2}, {1} years old'.format(name, sex, age))for i inargs:print(i)for k,v inkwargs.items():print(k,'----',v)

stu("zhangsan",18)print('*'*30)

stu("lisi", 20, "girl")print('*'*30)

stu("lilei", 18, 'shanghai', 'freshman', hobby="dancing", state="single")

运行结果:

Hi guys, I am happy to tell you about myself, my name is zhangsan, a 18, boy years old

******************************

Hi guys, I am happy to tell you about myself, my name is lisi, a 20, boy years old

girl

******************************

Hi guys, I am happy to tell you about myself, my name is lilei, a 18, boy years old

shanghai

freshman

hobby ---- dancing

state ---- single

函数文档

定义形式:

deffunc(p1, p2, ...):'''func document

parameters statament

return statament'''func body

实例:

def stu(name, age, *args, sex="boy", **kwargs):'''this is the func document, where you can get help message

:param name: your name

:param age: your age

:param args: other info

:param sex: your sex

:param kwargs: other info

:return: print the the screen return none'''

pass

print(stu.__doc__)print('*'*30)

help(stu)

运行结果:

this is the func document, where you can get help message

:param name: your name

:param age: your age

:param args: other info

:param sex: your sex

:param kwargs: other info

:return: print the the screen return none

******************************

Help on function stu in module __main__:

stu(name, age, *args, sex='boy', **kwargs)

this is the func document, where you can get help message

:param name: your name

:param age: your age

:param args: other info

:param sex: your sex

:param kwargs: other info

:return: print the the screen return none

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_39794385/article/details/110176911

智能推荐

NotePad++ 语法高亮 INC 文件_weixin_33947521的博客-程序员宅基地

2019独角兽企业重金招聘Python工程师标准>>> ...

C++含变量的后缀表达式计算__程序设计_的博客-程序员宅基地

C++含变量的后缀表达式计算接了个老外的作业,要求是在原代码基础上添加支持变量的后缀表达式的计算,题目要求如下:Make the Reverse Polish Notation calculator work with variablesIf the input is2 3 4 +* -> a =that means work out 2*( 3+4) and remember that as the value of a.-> needs to be handled special

滴滴:前五个月华北20城共3.51亿人使用打车应用出行_weixin_34174105的博客-程序员宅基地

6月30日,滴滴出行与第一财经商业数据中心联合发布的《知道——华北城市智能出行大数据报告》显示,今年前五月,华北地区共有3.51亿人次使用打车软件智能出行,其中,北京、太原、天津三地智能出行渗透率居于前列。该报告还以北京为例分析了智能出行平台对城市交通服务的改善。具体来看,北京地区乘客使用滴滴出行,人均等车时间仅为5.6分钟。在提高居民出行效率的同时...

VSCode+xampp搭建PHP开发环境_山水之恋的博客-程序员宅基地_vscode xampp

一:安装集成软件包1、下载XAMPP下载地址:http://xiazai.zol.com.cn/detail/38/372445.shtml2、安装:一路next,安装地址最好不要选C盘,笔者安装的是英语版,安装成功根据需求开启,笔者写PHP的话选择开启Apache3、配置环境变量把PHP.exe所在文件夹路径(笔者的是“D:\soft\xampp\php”)添加进环境变量-系统变量-Path中4、检查xampp配置是否成功在cmd中执行 php -v...

Codeforces 920D Tanks_ahu12345678的博客-程序员宅基地

题目链接题意有 \(n\) 个容积无限的水缸,初始时水量为\(a_1,a_2,...,a_n\),有一把容积为\(k\)的勺子,可以从一个水缸中舀水倒入另一个水缸中。问能否给出操作序列,使得最终某一个水缸中水的容量为\(V\).思路参考 - 粉兔.结论首先,如果\(\sum_{i=1}^{n}a_i\lt V\),显然不可行。否则,一旦\(\exists p_1,p_2,....

虚拟刻录光盘_weixin_33720078的博客-程序员宅基地

2019独角兽企业重金招聘Python工程师标准>>> ...

随便推点

Oracle创建多实例_楼兰过客的博客-程序员宅基地_oracle多实例

Oracle创建多实例在linux服务器上创建orcl实例时忘了设置编码,默认使用系统UTF-8的编码,但是项目数据库使用有的是GBK,所以想再创建一个实例挂载成GBK编码的数据库。因为是远程服务器,没法弹出dbca的可视化界面,因此需要手动使用命令进行创建。一、使用oracle用户登录操作过程中需要使用频繁切换ORACLEHOME和ORACLE_HOME和ORACLEH​OME和ORACLE_BASE,需要事先查看环境变量里有没有配置这两个变量,如果没有配置先配置一下,不然敲路径会敲的头大。使用e

Notepad++ 安装插件管理器_lzm1016733696的博客-程序员宅基地_notepad++安装csdn

##Notepad++ 安装插件管理器手动安装插件管理plugin manager在github上找到最新的插件管理版本https://github.com/bruderstein/nppPluginManager/releases下载并解压。关闭notepad++,将下载的文件解压,将解压后的plugin包下的PluginManager.dll拷贝到notepad++安装路径下...

培训补坑(day8:树上倍增+树链剖分)_weixin_30437337的博客-程序员宅基地

补坑补坑。。其实挺不理解孙爷为什么把这两个东西放在一起讲。。当时我学这一块数据结构都学了一周左右吧(超虚的)也许孙爷以为我们是省队集训班。。。好吧,虽然如此,我还是会认真写博客(保证初学者不会出现看不懂的情况啦,如果有的话可以在博客下方留言QAQ,我会尽量解答的。。)首先先讲一下倍增:倍增的思想是这样的:比如我们知道a[1]->a[2],a[2]->a[3...

科普 | 隐私保护堪忧?加密数据仓库大显身手_Ontology Blockchain的博客-程序员宅基地

本文源自于 Rebooting Web of Trust 组织在 RWOT IX — Prague, 2019会议上的论文《Encrypted Data Vaults》的部分章节。原文:https://github.com/WebOfTrustInfo/rwot9-prague/blob/master/final-documents/encrypted-data-vaults....

linux 安装jdk,tomcat,jenkins_吾将向前冲锋的博客-程序员宅基地

Linux 安装 jenkins环境搭建1.jdk 安装linux系统下安装jdk及环境配置(两种方法)第一种属于傻瓜式安装,一键安装即可(yum安装);第二种手动安装,需要自己去Oracle官网下载需要的jdk版本,然后解压并配置环境,整个过程其实很简单。一、yum一键安装二、手动安装2.tomcat 下载 安装Linux下Tomcat安装配置买了台阿里云服务器,因为配置比较低,所以用Linux...

配置Nginx实现ThinkPHP 隐藏index.php_叱咤少帅(少帅)的博客-程序员宅基地_nginx thinkphp 隐藏index.php

背景使用PHP框架,都是通过统一的入口文件,然后访问控制的。形如:http://127.0.0.1/tp32/index.php/home/index/index这样其实不友好,我们怎么隐藏 index.php了?Nginx配置实现我们使用 try_files 去解决。server{ listen 80; server_name abc.qq.com; root /data/abc.qq.com/dist; .

推荐文章

热门文章

相关标签