博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
5-6 可变参数
阅读量:4680 次
发布时间:2019-06-09

本文共 1715 字,大约阅读时间需要 5 分钟。

1、定义的变量名全部使用大写字母表示它是一个常量

1 PORT = 3306  # 定义的变量名全部使用大写字母表示它是一个常量  不变

 

2、位置传参

1 def mysql(host,user,password,port,charset,sql,db):  # 定义一个连接mysql的函数2     print('连接mysql')  # 输出连接mysql3 4 # 1、必填参数,位置参数 调用函数的时候,必须一一对应传参5 mysql('ip','user','sdfsdf',3306,'sdfsdf','select','db')

 

3、关键字传参

1 def mysql(host,user,password,port,charset,sql,db):  # 定义一个连接mysql的函数2     print('连接mysql')  # 输出连接mysql3 4 # 2、关键字传参,需要指定传入的参数的参数名,没有位置限制5 mysql(user='root',password='123456',host='192.168.1.3',6       port=3306,sql='sdfsdf',db='sdfsdf',charset='sdfsdf')

 

4、位置传参和关键字传参使用注意事项

1 def mysql(host,user,password,port,charset,sql,db):  # 定义一个连接mysql的函数2     print('连接mysql')  # 输出连接mysql3 4 # 3、可以位置传数和关键字传参同时使用,注意,前面的需要位置对应,后面全部使用关键字传参5 mysql('192.168.1.1','root',port=3306,password='sdfsdf',sql='sdfsdf',db='sdfsdf',charset='sdfsdf')6 7 # 4、不能前面使用关键字传参,后面又用位置传参8 # mysql(password='123456','root',) 不对

 

5、*args 可变参数  非必填且个数不限

1 def mysql2(ip,*info):  # 定义一个函数  参数ip为必填  参数info为非必填且个数不限 2     print(ip,info) 3  4 # *args 将参数放到一个元组中  非必传,参数个数不定 5 # mysql2()  # 报错,ip为必填参数 6 mysql2('host',1)  # host (1,) 7 mysql2('host',1,2)  # host (1, 2) 8  9 # host ('user', 13345435, 0, 'sefsd', 'sdfds')10 mysql2('host','user',13345435,00000,'sefsd','sdfds')

 

6、定义一个发送人不定的发送邮件的函数

1 def send_mail(*args):  # 定义一个发邮件的函数,*args2     print(args)3 4 # *args 非必填,个数不限制5 send_mail()  # ()6 send_mail('qqq@qq.com')  # ('qqq@qq.com',)7 8 # ('qqq@qq.com', 'asaaa@163.com', 'ddd@sina.com')9 send_mail('qqq@qq.com','asaaa@163.com','ddd@sina.com')

 

7、从列表中取值传入参数

1 def calc(a,b,c):  # 定义一个函数,传入a,b,c三个参数2     print(a+b)  # 打印 a+b3     return a+b  # 返回 a+b 的值给函数4 5 l = [1,2,3]  # 定义一个列表6 calc(*l)  # 从列表中取值传入calc函数中  3

 

转载于:https://www.cnblogs.com/hushaoyan/p/10068443.html

你可能感兴趣的文章
linux 命令 考试,linux常用命令总结-第一次考试
查看>>
linux动态库编译多重依赖,Linux动态库多重依赖
查看>>
linux网卡缓冲区设置,【Linux】tcp缓冲区大小的默认值、最大值
查看>>
opus编译linux,Linux 下源码编译FFMEG
查看>>
linux 运行real basic,REALbasic 快速入门.pdf
查看>>
linux启动tomcat不停的触发gc,tomcat启动时就频繁gc和full gc
查看>>
linux uart串口驱动,X-017-KERNEL-串口驱动开发之uart driver框架
查看>>
linux 添加串口数量,如何在Linux中添加4个以上的串口设备?
查看>>
关于sqoop导入数据的时候添加--split-by配置项对sqoop的导入速度的影响。
查看>>
nginx配置
查看>>
2014-11-9------- 设有一数据库,包括四个表:学生表(Student)、课程表(Course)、成绩表(Score)以及教师信息表(Teacher)。...
查看>>
python 魔法方法补充(__setattr__,__getattr__,__getattribute__)
查看>>
NOIP 2010 关押罪犯
查看>>
CentOS7.5删除旧的内核
查看>>
Java常用的非受检异常
查看>>
HDOJ-2054
查看>>
centos7安装eclipse
查看>>
Web:AJAX的详解
查看>>
两种比较器Comparable 和 Comparator
查看>>
S2JDBC テーブルを利用した独自仕様のid採番メソッド
查看>>