首页 > 编程语言 >【Python学习】——函数进阶

【Python学习】——函数进阶

时间:2024-03-23 17:33:44浏览次数:29  
标签:info 进阶 Python gender age name 参数 user 函数

零、函数基础

在之前的文章里:

【Python学习】——基础语法

一、多返回值

def test_return():

        return 1,2

x,y = test_return()

print(x)  #结果1

print(y)  #结果2

按照返回值的顺序,写对应顺序的多个变量接受即可

变量之间用逗号隔开

支持不同类型的数据return 

二、多种传参方式

  • 位置参数:调用函数时根据函数定义的参数位置来传递参数
def user_info(name, age, gender):
    print(f"Your name is {name},age is {age}, gender is {gender}")


user_info("Sana", 27, "female")
  • 关键字参数:调用时通过“键=值”形式传递参数

函数调用时,如果有位置参数时,位置参数必须在关键字参数的前面,但关键字之间不存在先后顺序

def user_info(name, age, gender):
    print(f"Your name is {name},age is {age}, gender is {gender}")


# 关键字传参
user_info(name="Sana", age=27, gender="female")
# 可以不按照参数的定义顺序传参
user_info(age=29, name="Nayeon", gender="female")
# 位置参数和关键字传参混用
user_info("Dahyun", gender="female", age=25)

  •  缺省参数:缺省参数也叫默认参数,用于定义函数,为函数提供默认值,调用函数可不传该默认参数的值(注意:所有位置参数必须出现在默认参数前,包括函数定义和使用)

作用:当调用参数时没有传递参数,就会使用默认是缺省参数对应的值

def user_info(name, age, gender="male"):
    print(f"Your name is {name},age is {age}, gender is {gender}")


user_info("JYP", 50)
user_info("HEEJIN", 50, "female")

  •  不定长参数:不定长参数也叫可变参数,用于不确定调用的时候会传递多少个参数(不传参也可以)的场景

作用:当调用函数时不确定参数个数时,可以使用不定长参数

不定长参数的类型

位置传递:

def user_info(*args):
    print(args)


user_info("JYP")
user_info("JYP", 2015)

传进去的所有参数都会被args变量收集,它会根据传进参数的位置合并为一个元组,args是元组类型,这就是位置传递 

关键字传递:

def user_info(**kwargs):
    print(kwargs)


user_info(name="JYP")
user_info(name="JYP", year=2015)

 参数是“键=值”形式的情况下,所有的“键=值”都会被kwargs接受,同时会根据“键=值”组成字典

三、匿名参数

  • 函数作为参数传递 
def test_func(compute):
    result = compute(1, 2)
    print(result)


def compute(x, y):
    return x + y


test_func(compute)

这是一种计算逻辑的传递,而非数据的传递。 

  • lambda匿名函数

lambda关键字,可以定义匿名函数(无名称),只可临时使用一次

lanbda 传入参数:函数体(一行代码)

注意:函数体只能写一行代码

def test_func(compute):
    result = compute(1, 2)
    print(result)


test_func(lambda x, y: x + y)

匿名函数用于临时构建一个临时函数,只用一次的场景

标签:info,进阶,Python,gender,age,name,参数,user,函数
From: https://blog.csdn.net/m0_74301063/article/details/136968601

相关文章

  • 用函数和数组实现扫雷游戏(从0开始)
    文章目录概要整体架构流程(这里用VS2023来制作)代码实现小结概要学完数组和函数后我们可以通过所学知识写一个扫雷游戏,并实现一些拓展功能。我们采用多文件联调的模式来制作,这里需要先建好三个文件game.hgame.cminesweeper.c整体架构流程(这里用VS2023来制作)在......
  • C语言进阶——动态内存管理
    目录一、C语言底层内存知识补充二、动态内存函数1.1free1.2malloc1.3calloc1.4realloc三、使用常见错误3.1对非动态开辟内存使用free释放3.2空指针未判断造成的错误3.3使用free释放一块动态开辟内存的一部分3.4对同一块动态内存多次释放3.5动态开辟内存没有释放而......
  • 【python】写一个从指定路径读取xlsx的函数
    定义了一个名为read_xlsx的函数,从指定的路径(如果提供了路径)读取一个Excel文件并将其内容转换为pandas的DataFrame对象。#-*-coding:utf-8-*-#@Author:author_name#@Time:2024/3/2018:00importpandasaspddefread_xlsx(file_name,pat......
  • 十年老码农告诉你为何要从现在开始学Python
    前言最近许多小伙伴都很迷茫,就业市场环境低迷,自己没有傍身的一技之长,想学编程但是又被编程的难度吓退,经常是三天打鱼两天晒网,最后编程学习又不了了之,一切又回到原点。大家在编程学习过程中普遍最关注两点:一是学习难度、能否坚持,二是学成之后为自己带来的收益如何。作为十年......
  • 生成函数与多项式
    1.生成函数1.1普通型生成函数OGF1.1.1基础序列\(\{f_i\}_{i=0}^n\)的普通型生成函数是\(F(x)=\sum_{i=0}^nf_ix^i\)。\(n\)可以等于\(\infty\)。有一些常用的运算规则需要记住:\[F(x)+G(x)=H(x)\iffh_n=f_n+g_n\]\[F(x)G(x)=H(x)\iffh_n=\sum_{i=......
  • python POST推送多种数据
    python POST推送多种数据 importrequests,os,json,hashlibfromrequests.exceptionsimportTimeout#小程序数据推送defpostDataToServer(self,param1,param2,param3,param4):url='http://www.baidu.com/t1/dfgdfgsdfgsdfgsdfbdfgsdgsdfgsdfgjfhjf......
  • C语言——函数练习程序
    1.从终端接收一个数,封装一个函数判断该数是否为素数#include<stdio.h>intpri(intnum){inti=0;for(i=2;i<num;i++){if(num%i==0){return0;break;}}if(i==num-1)......
  • Python探索反距离加权空间插值方法的深度
    介绍反距离加权(IDW)是一种广泛用于地理信息系统(GIS)和环境科学的空间插值技术,用于根据附近位置的值估计任何位置的缺失值。其基本原理很直观:距离兴趣点较近的位置比距离较远的位置更相似。本文深入探讨了IDW的方法、应用、优势和局限性,深入探讨了其在空间分析中的重要......
  • Python——取名规范
    选择简单易懂的名称除非编写的代码是“一次性”的,仅需运行一次,不需要长期维护,否则应该在命名这件事上花些工夫。如果只是简单地用a,b,c作为变量名,将会花费不必要的心里会议当初这些变量的作用。计算机并不在乎名称是否言简意赅还是语焉不详。名称的作用是让人更容易阅读而不是让计......
  • python基本概念及语法
    Python是一种高级、面向对象的编程语言,它具有简洁、易读的语法,适用于多种领域的应用开发。Python的基本概念包括:变量:用于存储数据的容器,可以是数字、字符串、列表等类型。在Python中,不需要事先声明变量的类型,可以直接赋值使用。示例:x=5#整数变量y="Hello"#字符......