python 函数操作示例

简介: python 函数操作示例

Python函数操作

1.1 语法及示例
# 1.语法
# def关键字  函数名(参数列表):
#     函数体
#     return 返回值
# 函数使用
def my_len(data):
    count = 0;
    for x in data:
        count += 1
    print(f"字符串{data} 的长度为:{count}")
my_len("hello")
my_len("hello,world!")
1.2 python函数返回值

python的函数支持多个返回值,c/c++函数的返回值在函数声明的时候就确定了,类型只有一种。

# 如果没有指定返回值,默认返回None
def test():
    print("ok")
    return None
print(f"test函数的返回值为:{test()}")
print(f"test函数的返回值类型为:{type(test())}")
# 函数的多返回值
def return_multi_value():
    return 1, "hello", [1,2,3]
x, y, num_list = return_multi_value()
print(x)
print(y)
print(num_list)
1.3 python函数的说明文档

使用 “”" 函数功能描述"“”

# 函数的说明文档
def add(num1, num2):
    """
    add函数可以实现两数相加功能
    :param num1: 参数1
    :param num2: 参数2
    :return: 两数相加的结果
    """
    res = num1 + num2;
    return res
print("res = %d" % add(1, 2))
1.4 python函数参数传递的几种方式
def set_user_info(name, age, addr="beijing"):
    print(f"{name} 同学, 年龄:{age} 家庭住址:{addr}")
set_user_info("lwang", 20, "beijing")
# 1.4.1 关键字传参
set_user_info(name = "panda", age = 20, addr = "xian")
# 1.4.2 参数有默认值,其中addr默认为:beijing
set_user_info("lyz", 18)
# 1.4.3 不定长参数传递
# (1)位置不定长 - *args 会根据传入参数的位置,合并为一个元组tuple,args是元组类型
def func1(*args):
    print(f"args的类型为:{type(args)}, 内容是:{args}")
func1(1, 2, 3, "name")
# (2)关键字不定长 - **kvargs  要求必须是 k-v 的形式传递参数,以字典的形式保存数据
def func2(**kvargs):
    print(f"kvargs的类型为:{type(kvargs)}, 内容是:{kvargs}")
func2(name="jazz", age=20, addr="tianjin",habbie="game")
1.5 函数作为参数传递(函数指针)
# 函数作为参数传递
def add(x, y):
    return x+y;
def sub(x, y):
    return x-y;
def calculator(add_ptr, x, y):
    print(f"add_ptr 的类型为:{type(add_ptr)}")
    return add_ptr(x, y)
print(calculator(add, 2, 3))
1.6 lambda表达式

匿名函数

# 7. 函数的定义:
# def 关键字,定义有名称的函数;
# lambda 关键字定义匿名函数, 语法: lambda 参数:函数体(一行代码),return默认省略
print(f"lambda表达式测试结果:{calculator(lambda x,y:x+y, 100, 100)}")


推荐一个零声学院免费教程,个人觉得老师讲得不错,分享给大家:[Linux,Nginx,ZeroMQ,MySQL,Redis,fastdfs,MongoDB,ZK,流媒体,CDN,P2P,K8S,Docker,TCP/IP,协程,DPDK等技术内容,点击立即学习:

相关文章
|
2月前
|
搜索推荐 Python
利用Python内置函数实现的冒泡排序算法
在上述代码中,`bubble_sort` 函数接受一个列表 `arr` 作为输入。通过两层循环,外层循环控制排序的轮数,内层循环用于比较相邻的元素并进行交换。如果前一个元素大于后一个元素,就将它们交换位置。
147 67
|
8天前
|
Python
[oeasy]python057_如何删除print函数_dunder_builtins_系统内建模块
本文介绍了如何删除Python中的`print`函数,并探讨了系统内建模块`__builtins__`的作用。主要内容包括: 1. **回忆上次内容**:上次提到使用下划线避免命名冲突。 2. **双下划线变量**:解释了双下划线(如`__name__`、`__doc__`、`__builtins__`)是系统定义的标识符,具有特殊含义。
20 3
|
12天前
|
JSON 监控 安全
深入理解 Python 的 eval() 函数与空全局字典 {}
`eval()` 函数在 Python 中能将字符串解析为代码并执行,但伴随安全风险,尤其在处理不受信任的输入时。传递空全局字典 {} 可限制其访问内置对象,但仍存隐患。建议通过限制函数和变量、使用沙箱环境、避免复杂表达式、验证输入等提高安全性。更推荐使用 `ast.literal_eval()`、自定义解析器或 JSON 解析等替代方案,以确保代码安全性和可靠性。
24 2
|
1月前
|
Python
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
Python中的函数是**一种命名的代码块,用于执行特定任务或计算
52 18
|
1月前
|
数据可视化 DataX Python
Seaborn 教程-绘图函数
Seaborn 教程-绘图函数
62 8
|
1月前
|
数据可视化 Python
以下是一些常用的图表类型及其Python代码示例,使用Matplotlib和Seaborn库。
通过这些思维导图和分析说明表,您可以更直观地理解和选择适合的数据可视化图表类型,帮助更有效地展示和分析数据。
73 8
|
1月前
|
API Python
【Azure Developer】分享一段Python代码调用Graph API创建用户的示例
分享一段Python代码调用Graph API创建用户的示例
57 11
|
1月前
|
Python
Python中的函数
Python中的函数
46 8
|
2月前
|
网络安全 Python
Python网络编程小示例:生成CIDR表示的IP地址范围
本文介绍了如何使用Python生成CIDR表示的IP地址范围,通过解析CIDR字符串,将其转换为二进制形式,应用子网掩码,最终生成该CIDR块内所有可用的IP地址列表。示例代码利用了Python的`ipaddress`模块,展示了从指定CIDR表达式中提取所有IP地址的过程。
63 6
|
2月前
|
监控 测试技术 数据库
Python中的装饰器:解锁函数增强的魔法####
本文深入探讨了Python语言中一个既强大又灵活的特性——装饰器(Decorator),它以一种优雅的方式实现了函数功能的扩展与增强。不同于传统的代码复用机制,装饰器通过高阶函数的形式,为开发者提供了在不修改原函数源代码的前提下,动态添加新功能的能力。我们将从装饰器的基本概念入手,逐步解析其工作原理,并通过一系列实例展示如何利用装饰器进行日志记录、性能测试、事务处理等常见任务,最终揭示装饰器在提升代码可读性、维护性和功能性方面的独特价值。 ####