函数基础和函数参数

函数,基础,函数参数 · 浏览次数 : 6

小编点评

**第一部分:函数基础 函数的作用意义:** 1. **代码重复性:** 通过封装函数,可以重复使用同一个代码块,简化代码结构,提高开发效率。 2. **代码复用:** 通过封装函数,可以将代码逻辑重复地应用到不同的场景中,提高代码复用性。 **第二部分:函数参数** 1. **定义参数:** 在函数定义时,可以指定参数的默认值,当该参数不传值时默认值会被使用。 2. **可选参数:** 在函数定义时,可以指定参数为可选参数,当该参数没有值时可以忽略它。 **第三部分:常见内置函数** 1. **filter():** 用于过滤列表中的元素并返回符合条件的元素的列表。 2. **zip():** 用于将对象逐一配对,可以用于遍历集合中的元素并获取对应位置的值。 3. **enumerate():** 用于返回一个可枚举的对象,可以用于遍历集合中的元素并获取索引和值。 4. **map():** 用于对列表中的元素进行处理并返回新的列表,可以进行过滤、转换等操作。 5. **exec():** 用于执行字符串编译过的字符串,可以用于执行字符串中的代码。 6. **filter():** 用于与 filter 的区别,可以根据不同的条件返回不同的结果。 7. **map():** 用于对列表中的元素进行处理并返回新的列表,可以进行过滤、转换等操作。 8. **map():** 用于对列表中的元素进行处理并返回新的列表,可以进行过滤、转换等操作。 **练习:** ```python # 定义一个函数,可以对传入的数据进行排序 def sort_list(nums): return sorted(nums) # 获取所有亲朋好友月饼节吃的开心 happy_friends = [ "月饼节", "快乐的夜晚", "幸福的家庭", "美好的一天" ] # 打印所有亲朋好友月饼节吃的开心 print(happy_friends) ```

正文

第一部分:函数基础

 函数的作用意义:

  1.为了更好地管理代码,可能对应的代码块需要重复多次使用,所以通过一个函数封装起来,便于下次直接调用

  2.方法实际上是通过函数实现的

例1:

# type()  # 内置函数
def lis():
    li=[1,2,3]
    li.append(4)
    li.pop(2)  # 指定删除
    # print(li)  # [1, 2, 4]
    return li # 只有这里有return返回值调用的时候才能打印出来

a=lis() # 调用
print(a) # None

运行截图:

 例2:字母大小写转换

s='abc'
s2=s.upper()  # 有个return返回值给到s2接受
print(s2)

运行截图:

 第二部分:函数参数

 例1: 默认参数实参没有传值的时候就使用默认值,传了值就按下面的实参,注意:默认参数要位于必备参数列表的后面

def name(a,b=1):  # 定义函数的时候写的参数叫做形参:必备参数
    num=a+b
    print(a)
    print(b)
    return num  # 这里有没有retrun的作用区别注意一下
# b有默认值暂时不传值进去了 l=name(6) # 实参 ===》 这里的l只接受return返回值 print(l)

运行截图:

 如果给b也传值进去:

# l=name(6)  # 实参  ===》 这里的l只接受return返回值
l=name(6,2)
print(l)

运行截图:

 注意:return 和print的区别

  return:返回结果,结束函数
  print:打印结果
  如果要两个数拼接就需要函数体里面有返回值才可以实现
def name(a,b=1):  # 定义函数的时候写的参数叫做形参:必备参数
    num=a+b
    print(a)
    print(b)
    return num  

# l=name(6)  # 实参  ===》 这里的l只接受return返回值
l=name(6,2)
# print(l)

# 如果要两个数拼接就需要函数体里面有返回值才可以实现
print('总和是:%s,请核实一下信息'%l)

例题2:不定长参数(不限定长度,也可以不传参数)*args  

def name(a,b=1,*args):  # 定义函数的时候写的参数叫做形参:必备参数
    num=a+b
    print(a)
    print(b)
    # return num
    print(args)  # (2, 4, 5)

l=name(6,4,2,4,5)  # 实参  ===》 这里的l只接受return返回值
# l=name(6,4,*(2,4,5)) # 也可这样写
print(l)

运行截图:

 例3:不定长参数:**kwargs(不管传多少个参数都可以)

def name(*args,**kwargs):  
print(args) # (2, 4, 5) print(kwargs) # l=name(6,4,2,4,5) # 实参 ===》 这里的l只接受return返回值 l=name(6,4,*(2,4,5),**{'a':3,'c':1}) # 也可这样写 print(l)

运行截图:

 例4:指定传参数

def name(a,b=1,*args): 
    num=a+b
    print(a)
    print(b)
    return num

al1=name(a=3,b=5)  # 这样写可指定传参
print(al1)

运行截图:

 第三部分:常见内置函数

 

1.过滤器:filter(函数,过滤的对象)

li=[3,2,1,0,5,7,9]
def num(obj):
    if obj>=5:
        # print(obj)
        return obj

# 过滤器:filter(函数,过滤的对象)
# list(filter(num,li))
# tu=tuple(filter(num,li))
tu=str(tuple(filter(num,li)))
# 把元组转换成字符串拼接到字符串里面
print('优秀学员:%s'%(tu))

运行截图:

 2.zip:将对象逐一配对(没有的就不配对了)

li1=[11,2,4,5]
t=('小明','小花','小张')
print(dict(zip(li1,t)))  # 配对:类型转换

运行截图:

 3.enumerate :返回一个可以枚举的对象( 类型转换才可以看到效果)

print(list(enumerate(['小明','肖工','李工'])))
print(tuple(enumerate(['小明','肖工','李工'])))
print(dict(enumerate(['小明','肖工','李工'])))

运行截图:

4.eval:取出字符串中的内容

# 将字符串当成有效的表达式来求值并返回计算结果,不能赋值
b=22
eval('print(123)')
eval('print(b)')

运行截图:

 5.exec :执行字符串编译过的字符串

c='print(123)'
exec(c)
exec('d=5')  # 可以赋值
print(d)

运行截图:

 6.map(与filter的区别是不管是否满足都会返回,不满足的返回默认None,可以手动改下)

li2=[62,82,81,90,95,77,69]
def f(o):
    if o>=80:
        return '优秀'
    else:
        return '加油'

print(li2)
m=list(map(f,li2))
print(m)

运行截图:

 练习:

定义一个函数,可以对传入的数据进行排序, 通过一个参数来决定是正向排序还是反向排序

 

每逢佳节倍思亲,又是一年中秋,国庆。祝愿所有亲朋好友月饼节吃的开心,喝的浪漫,对于自己还是那句话先努力挣钱吧,没有足够的积蓄哪有想要诗与远方的遐想与底气呢? -----------加油吧,打工人

 

与函数基础和函数参数相似的内容:

函数基础和函数参数

第一部分:函数基础 函数的作用意义: 1.为了更好地管理代码,可能对应的代码块需要重复多次使用,所以通过一个函数封装起来,便于下次直接调用 2.方法实际上是通过函数实现的 例1: # type() # 内置函数 def lis(): li=[1,2,3] li.append(4) li.pop(2)

python入门基础(13)--类、对象、全局函数,类内部调用

面向过程的编程语言,如C语言,所使用的数据和函数之间是没有任何直接联系的,它们之间是通过函数调用提供参数的形式将数据传入函数进行处理。 但可能因为错误的传递参数、错误地修改了数据而导致程序出错,甚至是崩溃。当需要修改或维护程序时要从程序提供的一堆数据中去寻找和修改它,要扩展函数的功能,只能重新建立一

C#学习笔记--复杂数据类型、函数和结构体

C#语言的基础知识。在学习练习C#入门知识之后,对C#语言基础的知识进行学习练习! 涉及到语言的基础---一些复杂的数据类型,以及类和结构体。走出简单的小程序代码片段, 开始逐步走向抽象的数据世界。加油!

Chart.js (v2.9.4) 2-主要的函数和对象介绍

Color() :主要负责渲染图表时候,针对颜色处理相关函数 helpers_core:工具对象,提供了基础的工具函数功能,遍历数组,扩展对象,合并对象,克隆对象等等。 core_defaults:负责存储系统默认的全局属性或是插件,用户通过这个全局对象配置一些通用的属性或是插件,轻松让所有实例化出

【matplotlib基础】--画布

Matplotlib 库是一个用于数据可视化和绘图的 Python 库。它提供了大量的函数和类,可以帮助用户轻松地创建各种类型的图表,包括直方图、箱形图、散点图、饼图、条形图和密度图等。 使用 Matplotlib 的过程中,遇到的难点并不在于绘制各类的图形,因为每种图形都有其对应的API。难点在于

【matplotlib 基础】--目录(完结)

Matplotlib 库是一个用于数据可视化和绘图的 Python 库。 它提供了大量的函数和类,可以帮助用户轻松地创建各种类型的图表,包括直方图、箱形图、散点图、饼图、条形图和密度图等。 本系列具体内容包括: 画布 画布是其他所有的元素的载体,可以说是最重要,也是最容易被忽视的元素。 绘制图形之前

math 库中常用的数学运算和常量【GO 基础】

GO 语言的 math 库是一个内置的标准库,其中包含了许多数学函数和常量,用于计算各种数学运算和统计学计算,今天来梳理下备查。

统计力学中的概率论基础(一)

本文的主要内容是一些统计力学中的基础的概率论知识,如密度函数、分布函数和贝叶斯定理的一些基本概念,主要作为一个简单的知识内容记录和分享,后续还有更多的同系列文章。

#Powerbi函数学习 SELECTEDVALUE与ISFILTERED

Power BI中的DAX函数ISFILTERED可以用来判断一个表或者一个列是否被筛选器所影响。 这个函数的语法很简单,就是ISFILTERED(),返回值是TRUE或者FALSE。那么,这个函数有什么用呢?我们来看一个例子。 第一步:数据源和基础度量值

深入剖析C++多态的实现与原理-详解

目录多态基础虚函数虚函数的继承虚类/虚基类重写/覆盖条件:概念:多态的条件其他的多态行为多态中子类可以不写virtual协变代码举例继承遗留问题解决析构函数具体解决方式:题目1答案:解析:题目2答案:C++11 override和finalfinal功能1:禁用继承使用场景:功能2:禁用重写使用场景