首页 > 编程语言 >0基础学python-10:函数的定义,调用以及参数

0基础学python-10:函数的定义,调用以及参数

时间:2024-07-13 20:58:44浏览次数:18  
标签:10 调用 函数 python Alice 关键字 参数 print name

目录

前言

1. 函数的定义

2. 函数的调用

3. 函数的参数

< 1 > 必选参数

< 2 > 默认参数

< 3 > 可变参数

< 4 > 关键字参数

 < 5 > 命名关键字参数

 4.注意事项


前言

        函数是一段完成特定任务的代码块,可以通过定义、调用和传递参数来实现代码的模块化和重复利用,提高开发效率和代码质量。

 

1. 函数的定义

        函数是一个封装了特定功能的代码块,通过给定的名称来标识。在 Python 中,函数定义的基本语法如下:

  图解:                       

def function_name(param1, param2, ...):
    """
      :param strs: 
      :return:        #文档字符串(docstring):用于描述函数的作用、参数和返回值等信息
    """
    # 函数体:实现具体功能的代码块
    statement(s)
    return expression  #  expression 可选的返回语句
  • 函数名:唯一标识函数的名称,应该使用有描述性的名字,符合命名规范,与变量命名规则差不多。可以参考:0基础学python-3:注释,关键字和变量命名规则-CSDN博客

  • 参数:可选的,用于接收输入值的变量。可以有零个或多个参数,可以是位置参数、默认参数、可变长参数等。

  • 函数体:包含实现函数功能的一组语句。函数被调用时,这些语句会执行。

  • 返回值:可选的,用于向函数调用者返回结果。如果没有明确的返回语句,函数会返回 None

 

2. 函数的调用

        函数调用是指执行函数体内的代码的过程。调用函数时需要使用函数名和必要的参数(如果函数定义了参数)。

# 调用函数
result = function_name(argument1, argument2, ...)


# 例子
def py_1():
    print("hello world")
    return 0

a = py_1()
print(a)
  • 位置参数:按照函数定义时参数的顺序传递给函数。

  • 关键字参数:指定参数名来传递参数,可以改变参数的顺序,提高代码的可读性。

输出:  函数py_1内的print语句执行,return 后面的值也被返回打印

hello world
0

 

3. 函数的参数

        在函数定义时,可以指定多种类型的参数。除必选参数外,还可使用默认参数、可变参数、关键字参数和命名关键字参数。

        注意!参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数

 

< 1 > 必选参数

        又名位置参数,调用函数时必须按顺序提供,不多不少。

def greet(name, message):
    print(f"Hello, {name}! {message}")

greet("Alice", "How are you?")  

输出:

Hello, Alice! How are you?

 

< 2 > 默认参数

        在函数定义时为参数指定默认值。

def greet(name, message="Good morning!"):    
    print(f"Hello, {name}! {message}")

greet("Alice")  

输出:

Hello, Alice! Good morning!

 

 但是!再次调用函数,并且用新的参数时,会将默认参数覆盖再执行函数内容

greet("Alice!", "You look so pretty")

 输出:

Hello, Alice!! You look so pretty

 

< 3 > 可变参数

        使用 *args 接收不定数量的位置参数,作为元组(tuple)传递给函数。

def sum_all(*args):
    total = 0
    for num in args:
        total += num
    return total

print(sum_all(1, 2, 3, 4))

输出:

10

 

< 4 > 关键字参数

        使用 **kwargs 接收不定数量的关键字参数,作为字典(dict)传递给函数。

def print_info(**kwargs):
    for key, value in kwargs.items():   # 取出字典的键和值分别放入key和value
        print(f"{key}: {value}")

print_info(name="Alice", age=30, city="New York")

输出:

name: Alice
age: 30
city: New York

 

 < 5 > 命名关键字参数

        命名关键字参数是指在函数定义中,在可变位置参数 *args 之后使用的参数,这些参数必须在调用函数时以关键字的形式提供。这种类型的参数在定义时,前方有*args ,则直接在后方定义;若无,则要用*来标识。

def greet(name, age, *, city="Unknown", job="Unknown"):
    print(f"Hello, I am {name}. I am {age} years old, living in {city} and working as a {job}.")

# 函数调用示例
greet("Alice", 30, city="New York", job="Engineer")
# city 和 job 是命名关键字参数,在调用时需指定关键字

输出:

Hello, I am Alice. I am 30 years old, living in New York and working as a Engineer.

 

 4.注意事项

  • 函数命名:使用有意义的函数名,符合命名规范,有助于代码的可读性和维护性。

  • 参数传递:确保调用函数时传递的参数类型和数量与函数定义相匹配,或者使用关键字参数明确传递参数值。

  • 返回值:理解函数的返回值类型,并根据需要处理返回值或者忽略返回值。

  • 文档字符串:使用文档字符串描述函数的作用、参数、返回值等信息,方便他人使用和理解你的函数。

  • 函数的独立性:每个函数应该实现一个明确的任务,保持功能单一,便于复用和测试。

  • 异常处理:在函数内部考虑可能的异常情况并适当处理,提高函数的健壮性和稳定性。

标签:10,调用,函数,python,Alice,关键字,参数,print,name
From: https://blog.csdn.net/weixin_65047977/article/details/140400666

相关文章

  • 基于python的学生成绩管理系统(GUI)
     利用python语言实现成绩管理系统的实现,以某班学生为例,实现以下功能:(1)   添加学生信息以及其九科成绩信息;(2)   将学生信息保存在文件中;(3)   修改和删除学生信息;(4)   查询学生信息;(5)   显示已经添加的所有学生信息。设计要求:1.具有主菜单界面显示。2.有......
  • 1003:对齐输出
    ......
  • abaqus基于python二次开发——钢结构穹顶建模
    模型示意本工作旨在建立一个上表面近乎球面的钢结构穹顶。如下图所示,该穹顶由环向梁和径向梁组成。环向梁径向梁上下截面都为工字钢。环向梁截面如下图所示,环向梁截面有一个倾斜角度,为了使其上表面尽可能与球面贴合。径向梁横截面为不经过旋转的工字形代码讲解 2......
  • 一起学习LeetCode热题100道(11/100)
    11.滑动窗口最大值(学习)给你一个整数数组nums,有一个大小为k的滑动窗口从数组的最左侧移动到数组的最右侧。你只可以看到在滑动窗口内的k个数字。滑动窗口每次只向右移动一位。返回滑动窗口中的最大值。示例1:输入:nums=[1,3,-1,-3,5,3,6,7],k=3输出:[3,3,5,......
  • 从新手到高手:Scala函数式编程完全指南,Scala 方法与函数(10)
    1、Scala方法与函数Scala有方法与函数,二者在语义上的区别很小。Scala方法是类的一部分,而函数是一个对象可以赋值给一个变量。换句话来说在类中定义的函数即是方法。Scala中的方法跟Java的类似,方法是组成类的一部分。Scala中的函数则是一个完整的对象,Scala中的函......
  • 使用 pip 和 requirements.txt 安装 Python 包
    1.构建当前项目需要的软件包pip3installpipreqspip3installpip-toolspipreqs--savepath=requirements.in&&pip-compile1.根据配置文件批量安装软件包。requirements.txt在某些环境中,可使用pip3而不是pippipinstall-rrequirements.txt2.检查当前环境......
  • python——数据类型及常用操作
    1.Intint是一种基本的数据类型,可以存储任意大小的整数,定义简单,将一个值赋给变量即可可以和+-*/等运算符结合a=2b=3c=a+bprint(c)d=b-apint(d)e=a*bprint(e)fa/bprint(f)a=2print(a)2.Floatfloat表示浮点数 也就是我们常说的带有小数......
  • python进程和线程_day013
    python进程和线程概念相关进程概览线程概览Python中的多进程Python中的多线程多进程还是多线程单线程+异步I/O(协程)应用案例示例1:将耗时间的任务放到线程中以获得更好的用户体验示例2:使用多进程对复杂任务进行“分而治之”。今天我们使用的计算机早已进入多CPU或多核......
  • 使用python绘制3D柱状图+完整代码展示
    一、首先进行代码效果图的展示        这是一个简单的3D模型图的展示,我们可以从官网上看到有类似的模型代码,但是大部分都没有加上全局系统配置,整体效果很单一,看不出来有什么特色,我们可以通过了解我们的python绘图工具pyecharts库。二、了解代码这个就是我们的全局......
  • python数据可视化(5)——绘制饼图
    课程学习来源:b站up:【蚂蚁学python】【课程链接:【【数据可视化】Python数据图表可视化入门到实战】】【课程资料链接:【链接】】Python绘制饼图分析北京天气饼图,是一个划分为几个扇形的圆形统计图表,能够直接以图形的方式直接显示各个组成部分所占比例目的:查看2019年北京......