Python中的函数

2023-12-29 23:58:02

Python中的函数

一、作业回顾

需求:编写一段Python代码,生成一个随机的4位验证码

提前:定义一个字符串

str1 = "23456789abcdefghijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"

编写Python代码:

① 思考:如果只生成4个字符的验证码,如何只保证从字符串中读取4次(while循环、for循环)

② 思考:如果随机的从str1字符串中读取4个字符?random.randint()生成随机数

③ 思考:如果从字符串提取出某个字符?答:使用索引下标,str1[索引下标]

import random


# 1、定义一个字符串
str1 = "23456789abcdefghijkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ"
code = ""
# 2、编写循环,只循环4次
for i in range(4):   # 0 1 2 3
    # 3、随机获取str1中的某个字符
    index = random.randint(0, len(str1) - 1)
    code += str1[index]
# 4、打印4位随机验证码
print(code)

二、Python中函数的作用与使用步骤

1、为什么需要函数

在Python实际开发中,我们使用函数的目的只有一个“让我们的代码可以被重复使用”

函数的作用有两个:

① 模块化编程

② 代码重用

在编程领域,编程可以分为两大类:① 模块化编程 ② 面向对象编程

2、什么是函数

所谓的函数就是一个被命名的独立的、完成特定功能的代码段(一段连续的代码),并可能给调用它的程序一个返回值

被命名的:在Python中,函数大多数是有名函数。当然Python中也存在没有名字的函数叫做匿名函数。

独立的、完成特定功能的代码段:在实际项目开发中,定义函数前一定要先思考一下,这个函数是为了完成某个操作或某个功能而定义的。(函数的功能一定要专一)

返回值:很多函数在执行完毕后,会通过return关键字返回一个结果给调用它的位置。

3、函数的定义

基本语法:

def 函数名称([参数1, 参数2, ...]):
    函数体
    ...
    [return 返回值]

4、函数的调用

在Python中,函数和变量一样,都是先定义后使用。

# 定义函数
def 函数名称([参数1, 参数2, ...]):
    函数体
    ...
    [return 返回值]

# 调用函数
函数名称(参数1, 参数2, ...)

5、通过一个栗子引入函数

① 使用Python代码,编写一个打招呼程序

第一步:见到一个老师,打一声招呼
print('您好')
第二步:见到一个老师,打一声招呼
print('您好')
第二步:见到一个老师,打一声招呼
print('您好')

虽然以上程序可以满足程序的需求,但是我们发现,我们的代码做了很多重复性的工作。我们能不能对以上代码进行进一步的优化,避免代码的重复性编写。

② 升级:使用Python代码,编写一个打招呼程序(函数——一次编写,多次利用)

# 定义函数(封装函数)
def greet():
    print('您好')

# 调用函数
# 见到一个老师,打一声招呼
greet()
# 见到一个老师,打一声招呼
greet()
# 见到一个老师,打一声招呼
greet()

③ 升级:使用Python代码编写一个打招呼程序,可以实现向不同的人打不同的招呼

# 定义一个函数,同时为其定义一个参数
def greet(name):
    print(f'{
     name},您好')

# 调用函数
# 见到了张老师,打一声招呼
greet('老张')
# 见到了李老师,打一声招呼
greet('老李')
# 见到了王老师,打一声招呼
greet('老王')

④ 函数的设计原则“高内聚、低耦合”,函数执行完毕后,应该主动把数返回给调用处,而不应该都交由print()等函数直接输出。

# 定义一个函数,拥有name参数,同时函数执行完毕后,拥有一个return返回值
def greet(name):
    # 执行一系列相关操作
    return name + ',您好'

# 调用函数
# 见到了张老师,打一声招呼
print(greet('老张'))  # 老张,您好
# 见到了李老师,打一声招呼
print("\033[0;31;40m\t" + greet('老李') + "\033[0m")
# 见到了王老师,打一声招呼
print("\033[0;36;40m\t" + greet('老王') + "\033[0m")

终端颜色参考:https://www.cnblogs.com/zhuminghui/p/9457185.html

6、聊聊return返回值

思考1:如果一个函数如些两个return (如下所示),程序如何执行?

def return_num():
    return 1
    return 2


result = return_num(<

文章来源:https://blog.csdn.net/qq_39203959/article/details/135277459
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。