函数目录

  • 定义
  • 可变参函数
  • 自定义列表最小值函数

定义

函数定义使用关键字def,可以不带参数,也可以带参数,带参数的函数,可以使用位置参数,详见示例:

str1 = 'sadf'def printVal():print(str1)printVal()def myadd(a1, a2):return a1 + a2int1 = myadd(3, 6)
str2 = myadd('s1', "s2")
print("int1 = ", int1)
print("str2 = ", str2)

运行结果:

因为使用pycharm格式化代码,会出现两行空格,这里保持一致,没有去删除空格。
但是需要注意函数类型,因为定义时没有控制类型,函数内部实现时,需要做一些判断,比如下面这个代码:

def myAdd(a1, a2):return a1 + a2
myAdd(1, 'a')


所以需要我们自行控制,可以使用函数来进行判断,顺带我这里还把多条件语句判断加上了,‘或者’使用or关键字,‘并且’使用and关键字。

def myAdd1(a1, a2):if not isinstance(a1, int) and not isinstance(a1, float):print('a1不是数字')returnif not isinstance(a2, int) and not isinstance(a2, float):print('a2不是数字')returnprint('a1 + a2 = ', a1 + a2)print('{} + {} = '.format(a1, a2), a1 + a2)myAdd1('1', 2)
myAdd1(1, '2')
myAdd1(1, 2)

运行结果:

可变参函数

如果在函数中调用了一些其他函数,这时候就可以使用可变参列表代替。
可变参列表为:**kwargs
如同我们的示例,test2函数有3个参数,printFunc函数调用了test2函数,但是我们定义的时候不关心test2函数的参数有哪些,就可以使用:**kwargs代替。
以后test2函数修改了参数列表,也不会影响printFunc函数。
注意:调用函数的时候,需要把参数列表的变量名加上,否则对应不上参数列表。
即示例中的:x=3, t1=3, t2=6, t3=9。

def test2(t1, t2, t3):print("t1 + t2 + t3 = ", t1 + t2 + t3)def printFunc(x, **kwargs):if x == 3:test2(**kwargs)printFunc(x=3, t1=3, t2=6, t3=9)

运行结果:

自定义列表最小值函数

def lstMin(lst):if not lst:return Nonebol = FalseminVal = 4294967295for item in lst:if not bol:if isinstance(item, int):if minVal > item:minVal = itembol = Truecontinueif isinstance(item, int):if item < minVal:minVal = itemif not bol:return Nonereturn minVallst1 = [1, 22, 423, '12', 'wewqr', 2134, [213124, 12, '2334']]
print('lst1 = ', lst1, type(lst1))
print('lstMin(lst1) = ', lstMin(lst1))
lst2 = [11111, 222222, 4233, '12', 'wewqr', 2134, [213124, 12, '2334']]
print('lst2 = ', lst2, type(lst2))
print('lstMin(lst2) = ', lstMin(lst2))

运行结果:

自定义了一个求list元素中最小值的函数,当然这个函数是局限性的。只求list元素中数字的最小值,如果没有数字,则返回None,有数字则返回数字的最小值。因为python一些值怎么获取还不太清楚,还需要加强。比如int类型的最小值,这个有没有,怎么表示,百度了一下,貌似没人解答。如果有清楚的小伙伴,看到这篇博文,可以评论区留言解答。

python学习-函数(定义、可变参、小练习(列表最小值函数))相关推荐

  1. 【Python学习笔记】猜颜色小游戏

    [Python学习笔记]猜颜色小游戏 前言 一.算法原理 1. 生成器部分 2. 检测器部分 二.代码 过程BUG汇总笔记 总结 前言 最近馋世界游戏大全51,心血来潮用Python写了个猜颜色,顺便 ...

  2. 函数定义涉及的三要素C语言,(函数定义与三要素答案.doc

    (函数定义与三要素答案 函数定义及三要素 1.与函数y=10lg(2x-1)的图象相同的函数是( ) A.y= B.y=2x-1 C.y= D.y= [答案] B [解析] y=10lg(2x-1)= ...

  3. Python学习:定义函数的默认参数和可变参数

    一.默认参数 定义函数的时候,还可以有默认参数. 例如Python自带的 int() 函数,其实就有两个参数,我们既可以传一个参数,又可以传两个参数: >>> int('123') ...

  4. 王亟亟的Python学习之路(五)-dictionary,set,函数,函数参数

    转载请注明出处王亟亟的大牛之路 上一篇说的是循环,条件,Range,list和tuple,今天将从函数(方法)开始进一步的学习 -dictionary -set -函数 -函数参数 dictionar ...

  5. python数据函数定义的规则是什么_Python自定义函数基础概念

    一.函数定义语法: def 函数名(形参列表): 语句块 二.函数定义规则 1. 函数的名字就是语句块的名称 2. 函数名的命名规则与变量名相同(函数名必须是标识符) 3. 函数名是一个变量(不要轻易 ...

  6. 信号与系统(Python) 学习笔记 (8.1) 离散系统z域分析 -- 系统函数 H(z)

    [总目录] (1) 简介 Intro (2) 傅里叶 Fourier 常用函数的傅里叶变换汇总 (3) LTI 系统 与 滤波器 二次抑制载波振幅调制接收系统 Python (4) 取样 Sampli ...

  7. 【python】python学习之条件语句,小实验:商品打折后价格

    python学习之条件语句,用一个小实验来进行学习吧! price = float(input("请输入金额:\n")) if(price >= 100):if(price ...

  8. Python学习笔记:Day 12 编写日志列表页

    前言 最近在学习深度学习,已经跑出了几个模型,但Pyhton的基础不够扎实,因此,开始补习Python了,大家都推荐廖雪峰的课程,因此,开始了学习,但光学有没有用,还要和大家讨论一下,因此, 写下这些 ...

  9. python学习干货教程(10):列表

    列表是Python中6个内置序列类型之一,序列都可以进行的操作包括索引,切片,加,乘,检查成员,确定序列的长度以及确定最大和最小的元素. 列表是 "[]",有点像C中的数组,列表的 ...

最新文章

  1. 一般物流网站建设有哪些必备版块?
  2. mybaits十一:使用association分步查询
  3. Linux疑难杂症解决方案100篇(十二)-ubuntu中安装ftp服务器
  4. cadence 常见pcb电阻_从理想到现实,从PCB设计到实际产品,生产制造环节不容忽视……...
  5. ole db 访问接口 sqlncli 无法启动分布式事务_分布式事务,看这篇就够了
  6. mysql乱码utfmb4_MySQL乱码问题以及utf8mb4字符集
  7. 湖南工程学院毕业论文计算机,bbs毕业设计
  8. 深入解析Windows操作系统(笔记7)
  9. python Unicode字符与数值转换
  10. 基于html超市管理系统,超市管理系统后台模板
  11. 控制pico—unity中双目摄像机的clearFlags问题
  12. •SVG g、defs、symbol和use元素详解
  13. JavaScript判断受访域名,调用不同的js文件
  14. 【190227】VC++视频采集程序源代码
  15. iOS如何让APP删除后不接受APNS推送消息
  16. 计算机视觉基础之IoU和mIoU
  17. (转载)淘宝玉伯引发Web前后端研发模式讨论
  18. MySql两台服务器(主机)间热备份(双机热备份)
  19. imx6ul——uboot添加RTC,pcf8563驱动
  20. js判断字符超长度中间用...替换

热门文章

  1. SAP Commerce Cloud CMS 里的一些元素类型
  2. SAP Spartacus 404 Not found页面的显示机制 - canActivateNotFoundPage
  3. HTML css嵌套的一个例子
  4. SAP Spartacus由于导入module路径在服务器上不正确而导致的Travis build错误
  5. 使用StackBlitz和SAP Spartacus快速创建电商店铺页面
  6. SAP CRM 订单抬头文本的可编辑性讨论
  7. Angular:Use function as controller
  8. 关于SAP Cloud Platform ABAP环境费用的问题
  9. WebClient UI view controller所有可用的属性列表
  10. Try to create new xs project in AG3