Python函数基础

本文详细介绍了Python函数的基础知识,包括函数的概念、分类、定义、调用、返回值、参数等,并提供了多个练习题帮助读者巩固理解。通过学习,读者能够掌握如何定义、调用函数,了解函数的返回值、参数默认值以及不定长参数的使用方法。
摘要由CSDN通过智能技术生成

1. 函数的定义

1.1 函数的概念

函数就是实现某一特定功能的代码的封装。

函数就是把实现某一个功能的代码打成一个包,以后再需要这段代码对应的功能的时候不需要再写这段代码,而是直接调用封装这段代码的函数。

1.2 函数分类

1)系统函数(别人造好的机器):python自带的函数,例如:print、input、type、max、min、sorted等;

2)自定义函数(自己造的机器):由程序员自己创建的函数。

1.3 定义/创建函数

1.3.1 语法
'''def 函数名(形参列表):
    函数说明文档
    函数体
'''
1.3.2 说明

1)def:关键字;固定写法;

2)函数名:由程序员自己命名,但是必须符合命名要求和规范;

要求:是标识符;不能是关键字
规范:a. 见名知义(看到函数名就大概知道这个函数对应的功能是什么);
b. 字母都小写,多个单词用下划线隔开;
c. 不使用系统的函数名、类名、模块名;

3)(): - 固定写法;
4)形参列表:以’变量名1,变量名2,变量名3,…'的形式存在,这里的变量名可以有也可以没有

a. 形参的作用:将函数外部的数据传输到函数里面;
b. 怎么确定形参:看实现函数的功能需不需要额外的数据,需要几个(在函数体中,就把形参当成对应的数据来使用);

5)函数说明文档:本质就是一个多行注释,用来描述函数的功能和使用方法;

6) 函数体:

结构上:和def保持一个缩进的一条或者多条语句(至少一条) ;
逻辑上:函数体就是实现函数功能的列表。

1.3.3 练习

练习1:定义一个函数,统计指定字符串中中文的个数。

def count_chinese(str1):
    """
    统计字符串中中文的个数
    :param str1: 指定的字符串
    :return: None
    """
    count = 0
    for x in str1:
        if '\u4e00' <= x <= '\u9fa5':
            count += 1
    print(count)

练习2:定义一个函数,将指定的数据插入到指定列表的最前面。

def prepend(list1,num1):
    """
    将输入的数据插入到指定列表的最前面
    :param list1: 列表
    :param num1: 需要插入的数据
    :return: None
    """
    list1.insert(0,num1)
    print(list1)

练习3:定义一个函数,任意一个整数的阶乘。

def factorial(num1):
    """
    求任意整数的阶乘
    :param num1: 需要求阶乘的数(必须是大于等于1的整数)
    :return:
    """
    s = 1
    for x in range(1,num1+1):
        s *= x
    print(s)

练习4:定义一个函数,求任意一个圆的面积。

def circle_area(r):
    """
    求圆的面积
    :param r: 圆的半径
    :return: None
    """
    print(3.14 * r **2)

1.4 函数的调用

1.4.1 定义函数不会执行函数体

定义函数不会执行函数体,调用函数才会执行函数体。

1.4.2 怎么调用函数

1)语法:函数名(实参列表);

2)说明:

a. 函数名:需要哪个函数的功能就调用哪个函数,就写哪个函数的函数名(注意:函数名必须是已经定义好的函数的函数名);

b. ():固定写法;

c. 实参列表:以’数据1,数据2,数据3,…'的形式存在;实参就是通过形参从函数外部传递到函数内部具体的数据。

1.4.3 函数调用过程

当代码执行到函数调用语句的时候:

第一步:先回到先回到函数定义的位置;
第二步:传参(用实参给形参赋值);
第三步:执行函数体;
第四步:确定函数返回值;
第五步:回到函数调用的位置接着往后执行。

2. 函数的返回值

2.1 返回值

返回值就是从函数内部传递到函数外部的数据。

2.1.1 怎么确定函数返回值

看看执行函数体的时候有没有遇到return,如果遇到return,return后面的值就是返回值;如果没有遇到return,返回值是None。

2.1.2 怎么获取函数返回值

1)获取函数调用表达式的值就是获取函数的返回值。
(每个函数表达式都是有结果的,结果是返回值,所有函数返回值能做的事情,函数调用都可以做)。

2)函数调用表达式:调用函数的语句。

2.1.3 什么时候需要返回值

1)如果实现函数的功能产生了新的数据,我们就应该将新的数据返回;

2)原因:每次调用函数的时候,系统会自动为这个函数创建一个临时的栈区域,用来保存在函数中产生的数据(形参也保存在这个里面),当函数调用结束的时候,系统会自动释放这块内存(内存中的数据会被删除),只有返回值不会直接删除。

def func1():
    print(100)

x1 = func1()
print('x1:',x1)


def  func2():
    print('hello world')
    return 100

x2 = func2()
print('x2:',x2)
print(func2() * 2)


def func3(n):
    if n % 2:
        return 100
    else:
        return 200

x3 = func3(3)
print(f'x3:{
     x3}')

x4 = func3(4)
print(f'x4:{
     x4}')


def func4():
    return 100,200

x5 = func4()
print(f'x5:{
     x5}')    # x5:(100, 200)  -  元组


def func5():
    return 'abc'

a = 'abc'
b = func5()

print('abc'[-1],func5()[-1])    # c c

print('abc'.upper(),func5().upper())    # ABC ABC

练习:定义一个函数求任意两个数的和。

def sum1(num1,num2):
    """
    求两个数的和(函数功能说明)
    :param num1: 第一个数(参数说明)
    :param num2: 第二个数
    :return: None(返回值说明)
    """
    return num1 &
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值