IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Python知识库 -> Python中函数的超细解析 -> 正文阅读

[Python知识库]Python中函数的超细解析

一、python中的函数:

函数到底是什么呢:

  函数就是执行特定任何以完成特定功能的一段代码

1.代码如下:

示例:



print("------------位置参数-----------------")
def calc(a,b):
    c=a+b
    return c
result=calc(10,20)
print(result)

print('-------------关键字参数-------------------------')
def calc1(a,b):
    c=a+b
    return c
result1=calc1(b=1,a=2)
print(result1)

print('--------参数传递--------------')
def fun1(arg1,arg2):
    print('arg1',arg1)
    print('arg2',arg2)
    arg1=100
    arg2.append(10)
    print('arg1', arg1)
    print('arg2', arg2)
    return
n1=11
n2=[22,33,44]
print(n1)
print(n2)
print('------------------')
fun1(n1,n2)
print(n1)
print(n2)

print('-----------------函数的返回值----------------------------------')
def fun2(num):
    odd=[]
    even=[]
    for i in num:
        if i%2:
            odd.append(i)
        else:
            even.append(i)
    return odd,even
print(fun2([10,29,33,40,24,55,30,67]))

print('---------------默认值参数-------------------')
def fun3(a,b=10):
    print(a,b)
    return
fun3(100)
fun3(55,666)

print('------------个数可变的位置参数----------')
def fun4(*args):
    print(args)
fun4(10)
fun4(10,20,30)
print('---------------个数可变的关键字参数----------------------------')
def fun5(**args):
    print(args)
fun5(a=10)
fun5(a=10,b=20,c=30)

print('-------------函数递归-----------------------')

def digui(n):
    if n==1:
        return 1
    else:
        result2=n*digui(n-1)
        return result2
print(digui(6))

2.运行结果:

示例:

------------位置参数-----------------
30
-------------关键字参数-------------------------
3
--------参数传递--------------
11
[22, 33, 44]
------------------
arg1 11
arg2 [22, 33, 44]
arg1 100
arg2 [22, 33, 44, 10]
11
[22, 33, 44, 10]
-----------------函数的返回值----------------------------------
([29, 33, 55, 67], [10, 40, 24, 30])
---------------默认值参数-------------------
100 10
55 666
------------个数可变的位置参数----------
(10,)
(10, 20, 30)
---------------个数可变的关键字参数----------------------------
{'a': 10}
{'a': 10, 'b': 20, 'c': 30}
-------------函数递归-----------------------
720

进程已结束,退出代码为 0



总结:

提示:这里对文章进行总结:

      为毛使用函数:
         复用代码
         隐藏实现细节
         提高可维护性
         提高可读性便于调试

  函数的创建和调用:
      函数的创建:
             def  函数名([输入参数]):
                        函数体
                        [return xxx]

             def calc(a,b):
                 c=a+b
                 return c
       函数的调用:
                result=calc(10,20)
                print(result)


    函数的参数传递:
        函数调用的参数传递:
             位置实参:根据形参对应的位置进行实参传递
                      def cacl(a,b)         cacl(10,20)
             关键字实参:根据形参名称进行实参传递
                      def calc(a,b)    cacl(b=1=,a=20)

                形参:在函数的定义处
                实参:在函数的调用处
                             形参名称与实参名称可以不一致
      如果是不可变对象,在函数体的修改不会影响实参的值, arg1的修改为100,不会影响n1 的值
      如果是可变对象,在函数体的修改会影响到实参的值,  arg2 的修改,append(10)会影响到n2的值

      函数的返回值:
                函数返回多个值时,结果为元组
            1.如果函数没有返回值(函数执行完毕后,不需要给调用处提供数据,return可以省略不写)
            2.函数的返回值,如果是一个,直接返回原类型
            3.函数的返回值,如果是多个,返回的结果为元组

    函数的参数定义:
      函数定义时,给形参设置默认值,只有与默认值不符的时候才需要传递实参
                  def fun(a,b=10):
                    print(a,b)

                fun(100)    只传一个参数,b采用默认值10
                fun(20,30)   30将替换默认值10

             个数可变的位置参数:
                   定义函数时,可能无法事先确定传递的位置实参的个数时,使用可变的位置参数
                   使用*定义个数可变的位置参数
                   结果为一个元组
                       def fun(*args)
                          print(args)
                        fun(10)
                        fun(10,20,30)
             个数可变的关键字参数:
                   定义函数时,无法事先确定传递的关键字实参的个数时,使用可变的关键字形参
                   使用**定义个数可变的关键字形参
                   结果为一个字典
                       def fun(**argss):
                          print(args)
                       fun(a=10)
                       fun(a=10,b=20,c=30)

         递归函数:
               什么是递归函数:
                  如果在一个函数的函数体内调用了该函数本身,这个函数就称为递归函数
               递归的组成部分:
                  递归调用与递归终止条件
               递归的调用过程:
                  每递归调用一次函数,都会在栈内存分配一个栈空间
                  每执行完一次函数,都会释放相应的空间
               递归的优缺点:
                    缺点:占用内存多,效率低下
                    有点:思路和代码简单
  Python知识库 最新文章
Python中String模块
【Python】 14-CVS文件操作
python的panda库读写文件
使用Nordic的nrf52840实现蓝牙DFU过程
【Python学习记录】numpy数组用法整理
Python学习笔记
python字符串和列表
python如何从txt文件中解析出有效的数据
Python编程从入门到实践自学/3.1-3.2
python变量
上一篇文章      下一篇文章      查看所有文章
加:2021-07-13 17:25:22  更:2021-07-13 17:25:33 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/7 14:49:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码