python 11 函数

python 11 函数基础

1. 函数的作用

函数存在的价值:当一个功能需要反复使用的时候,如果没有函数,每次需要这个功能就必须把实现功能的代码写一遍,如果有函数,实现功能对应的代码只需要写一遍(封装成函数),然后再每次需要这个功能的时候调用实现这个功能的函数。

2. 认识函数

2.1 什么是函数(机器)

函数就是实现某一特定功能的代码的封装(函数就是将实现某一个或者某一类功能的代码打成一个包,以后在需要这个包中的这段代码,对应功能的时候不用重新写代码,而是使用封装了这段代码的函数)

2.2 函数的分类:

根据函数是由谁创建的,分为系统函数和自定义函数两种

  • 系统函数:别人已经造好的机器)- 由系统创建的函数(python本身就创建好的函数)、例如:print、input、min、max、type.

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

2.3 定义函数(定义就是创建的意思)

  • 语法:

    def 函数名(形参列表):

    函数说明文档

    函数体

    说明:

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

    2)函数名 - 由程序员自己命名,有两个要求,三个规范。

    两个要求:是标识符,不能是关键字

    三个规范:见名知义;所有字母都是小写,多个单词用下划线隔开;不使用系统的函数名、类名和模块。

    3)(): - 是固定写法

    4)形参列表 - 以’变量名1,变量名2,变量名3,···'的形式存在,根据情况,变量的数据可以为0(每一个变量就是一个形参)

    形参的作用就是将函数外部的数据传递到函数里面。

    5)函数说明文档 - 就是多行注释(相当于生活中的说明书)

    6)函数体 - 结构上,和def保持一个缩进的一条后多条语句

    逻辑上,就是实现函数功能的代

    注意:在定义函数的下方点击6个单引号,可以调出函数的功能说明区。

练习1:定义一个函数求一个数的阶乘

def factorial(num):
    product1=1
    for x in range(1,num+1):
        product1*=x
    print(product1)

product(5)
product(4)    
##
120
24    

练习2:定义一个函数统计字符串中数字字符的个数

def count_nums(str1):
    count1=0
    for x in str1:
        if x.isdigit():
            count1 += 1
     print(count1)
count_nums('sb87923ncidHBJSB9765')
count_nums('bsdh787SG1*4$@CNJD987')
##
9
8

练习3:定义一个函数,将两个字符串中所有的大写字母合并成一个新的字符串

def merge_upper(str1,str2):
    new_str=''
    for x in str1+str2:
        if x.isupper():
            new_str += x
    print(new_str)
merge_upper('ASCHEdgshgHUDSG345','HDB123')
merge_upper('123ERT','890Ndbcudhd')
##
ASCHEHUDSGHDB
ERTN

练习4:定义一个函数,删除列表中所有的空值(包括None,和其他空值(比如空字符串、空列表、空元组等))

#方法1直接删除
def remove_dull_value(list):
    for x in list[:]:
        if (not x) and x!=0:
            list.remove(x)
    print(list)
remove_dull_value([12,'sd',[],(),{
   },(0,),''0])
##结果显示
[12, 'sd', (0,), 0]
#方法2 建一个新的列表,把满足条件的元素加入新的列表中
def remove_dull_value(list):
    new_list=[]
    for x in list[:]:
        if x or x == 0:
            new_list.append(x)
    print(new_list)
remove_dull_value([[],0,(),{
   },[1,2],(2,3),78,'hu','加油'])
 ##结果显示
[0, [1, 2], (2, 3), 78, 'hu', '加油']         
  • 条件对应的表达式如果不是布尔,就转换成布尔看结果是否为True (0值和空值是False, 其他都是True)
3 . 调用函数

3.1 调用函数(使用函数—使用机器)

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

说明:

1)函数名:需要哪个函数对应的功能,就调用哪个函数,想要调用哪个函数,就写哪个函数的函数名。

注意:函数名必须是已经定义过的函数名

2)( ):是固定写法

3)实参列表:以’数据1,数据2,数据3,···的形式存在,这儿的每个数据都是一个实参,(实参对应的结果可以是任何有结果的表达式,不一定是一个具体的值,也可以是别的表达式),实参是用来给形参赋值的,要保证与形参一一对应

变量名1,变量名2,变量名3,···=数据1,数据2,数据3,··· 形参=实参

注意:定义函数的时候不会执行函数体,调用函数的时候才会执行函数体。

def func():
    print('########'
  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值