Python函数全解析:一网打尽所有知识点

15 篇文章 0 订阅
10 篇文章 0 订阅

图片

函数的简介:

  • 函数封装⼀个⼩功能,减少重复代码,实现⼩功能

图片

函数如何减少代码的重复?

例如:
  start=0
  end=10
  sum=0
  for i in range(start,end):
       sum+=i
  print(f '{sum}')
strart,end 是参数;range 是函数

打印出0-10之间的偶数和

图片

打印出0-10之间的总和

图片

打印出0-10之间奇数的总和

图片

什么是Python内置函数?

  • 是指在Python解释器中直接可用的函数,无需额外导入模块.以下是一些常用的Python内置函数:

  1. print():用于将内容输出到标准输出(通常是控制台).

  2. len():用于返回对象的长度或元素个数,例如字符串的字符数、列表的元素个数等.

  3. type():用于返回对象的类型.

  4. int():用于将一个数值或字符串转换为整数.

  5. float():用于将一个数值或字符串转换为浮点数.

  6. str():用于将对象转换为字符串.

  7. list():用于将可迭代对象转换为列表.

  8. tuple():用于将可迭代对象转换为元组.

  9. dict():用于创建字典对象.

  10. set():用于创建集合对象.

  11. range():用于生成一个指定范围的数字序列.

  12. input():用于从用户处获取输入.

  调用函数需要知道函数名和参数,如果传入的参数不对,会报TypeError的错误并且给出错误信息我可以给你一些常见的Python内置函数的示例:

  1. print() 函数示例:

print("Hello, World!")  # 输出:Hello, World!
  1. len() 函数示例:

my_list = [1, 2, 3, 4, 5]
length = len(my_list)
print(length)  # 输出:5
  1. type() 函数示例:

my_variable = 10
data_type = type(my_variable)
print(data_type)  # 输出:<class 'int'>
  1. int() 函数示例:

num_str = "123"
num_int = int(num_str)
print(num_int)  # 输出:123
  1. float() 函数示例:

num_str = "3.14"
num_float = float(num_str)
print(num_float)  # 输出:3.14
  1. str() 函数示例:

my_number = 42
number_str = str(my_number)
print(number_str)  # 输出:"42"

图片

1.以上只是一部分常见的Python内置函数,还有很多其他有用的内置函数可以在Python官方文档中找到.

2.这只是一小部分Python内置函数的示例,你可以根据需要在代码中使用其他内置函数.

如何⾃定义⼀个函数?

  • 使用def 函数

def sum_range(start,end+1)  #然后函数体

函数定义

1.在Python中,定义一个函数要使用def语句,依次写出函数名、括号、括号中的参数和冒号,然后,在缩进块中编写函数体,函数的返回值用return语句返回.如果没有return语句,函数执行完毕后也会返回结果,只是结果为None.return None可以简写为return.

2.end+1是因为range()函数生成的范围是左闭右开区间,简单说包括右终端点

3.函数的名字使用p1-p8,蛇形命名的函数的名字通常使用小写字母,并使用下划线将单词分隔开.

以下是一些示例:

  1. p1_function()

  2. p2_calculation()

  3. p3_process_data()

  4. p4_print_result()

  5. p5_validate_input()

  6. p6_sort_array()

  7. p7_convert_format()

  8. p8_handle_error()

函数调⽤

  1. ⽆参数

  2. 多参数

  3. ⽆返回值

  4. 有返回值

当调用函数时,可以有无参数、多个参数,以及有或无返回值.以下是一些示例:

  1. 无参数、无返回值的函数调用示例:

def greet():
    print("Hello, World!")
greet()  # 输出:Hello, World!
  1. 多参数、无返回值的函数调用示例:

def add_numbers(num1, num2):
    result = num1 + num2
    print("The sum is:", result)
add_numbers(3, 5)  # 输出:The sum is: 8
  1. 无参数、有返回值的函数调用示例:

def get_pi():
    return 3.14159
pi_value = get_pi()
print(pi_value)  # 输出:3.14159
  1. 多参数、有返回值的函数调用示例:

def multiply_numbers(num1, num2):
    result = num1 * num2
    return result
product = multiply_numbers(4, 6)
print(product)  # 输出:24

这些示例展示了函数的不同调用方式,你可以根据实际需求选择适合的方式来调用函数.而函数的调用:

sum_even=sum_even_of(start,end)

图片

一旦执行到 return 语句,函数将立即结束,无论是否有后续的代码.程序执行到return 语句时,它会立即停止当前函数的执行,并将控制权返回给调用该函数的地方

sum_even=sum_even_of赋值于sum_even实现函数的调用.
print(f'{sum_even}') 很关键.

函数的调用就是把实参传给了形参,参数类型:

  1. 位置参数

  2. 关键字参数

  3. 默认参数

  4. 任意多参数

位置参数:

sum_even_of(start,end)        ## sum_even_of(20,50)
# 会写出形参的名称

默认参数

sum_even_of(10)

任意多参数:

*或者**是可变参数,para是一个可变参数,一个星号 我们传入(6,10)赋值于start,end参数通过=解包操作完成赋值.

以下是用一个星号表示可变参数

图片

以下是用两个星号表示可变参数调用方式

图片

在python中最常见的函数方式是位置参数和关键词参数

图片

在python中,位置参数必须在关键词的前面.

图片

位置参数在前面;关键词参数在后面.

实现⻩⾦分割序列函数

⻩⾦分割序列函数⼜被称为斐波那契数列,在⾃然界中此序列较为常⻅,它的第⼀项是1,第⼆项是1,第三项是2,并且后⾯各项满⾜规律:

f(n+2) = f(n+1) + f(n)
def fibo(n):
i = 0
fibo_list = []
while i < n:
if i == 0 or i == 1:
fibo_list.append(1)
if i >= 2:
thd = fibo_list[-1] + fibo_list[-2]
fibo_list.append(thd)
i += 1
return fibo_list
如果fibo(5)
[1, 1, 2, 3, 5]

lambda函数

Lambda函数是一种匿名函数,也称为"lambda表达式".它是一种快速定义简单函数的方式,通常用于需要传递函数作为参数或者在代码中定义临时小型函数的情况.

Lambda函数具有以下特点:

  1. 它是一个单行函数,没有函数名称.

  2. 它可以接受任意数量的参数,但只能有一个表达式.

  3. 它返回表达式的结果,而不需要使用return语句.

Lambda函数的基本语法如下:

lambda arguments: expression

其中,arguments是函数的参数,可以是一个或多个;expression是函数的返回值,通常是一个简单的表达式.

以下是一些Lambda函数的示例:

  1. Lambda函数接受一个参数并返回其平方:

square = lambda x: x**2
print(square(5))  # 输出:25
  1. Lambda函数接受两个参数并返回它们的和:

addition = lambda a, b: a + b
print(addition(3, 4))  # 输出:7
  1. Lambda函数用于对列表中的每个元素进行操作:

my_list = [1, 2, 3, 4, 5]
squared_list = list(map(lambda x: x**2, my_list))
print(squared_list)  # 输出:[1, 4, 9, 16, 25]

Lambda函数通常与其他函数(例如map()、filter()等)一起使用,以提供简洁、灵活的函数定义和操作.

  • 29
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

知白守黑V

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值