博客
关于我
Python基础_函数的基本使用
阅读量:254 次
发布时间:2019-03-01

本文共 1839 字,大约阅读时间需要 6 分钟。

Python编程语言 - 函数基础

函数概述

函数是编程中一个核心概念,它将具有独立功能的代码块封装为一个模块。在需要时,通过调用函数可以执行封装代码,从而提高开发效率并实现代码的重用。

函数的作用

在开发程序时,使用函数可以帮助提高代码的可读性和维护性。通过将代码封装到函数中,可以更方便地复用功能,减少代码冗余。

函数基本使用

函数的定义

函数的定义格式如下:

def 函数名():  # 函数名称应能反映其功能    # 函数体内的代码    ...
  • def 是英文 define 的缩写,用于定义函数。
  • 函数名称应符合标识符命名规则:可以由字母、下划线和数字组成,但不能以数字开头,也不能与关键字重名。

函数的调用

调用函数非常简单,只需使用函数名加上小括号即可:

函数名()

案例演练

需求1:打招呼函数

编写一个 say_hello 函数,封装三行打招呼代码:

def say_hello():    print("hello 1")    print("hello 2")    print("hello 3")    print(name)

需求2:调用打招呼函数

在函数下方调用打招呼代码:

say_hello()print(name)

函数的参数

参数的作用

函数参数允许函数在处理数据时具有通用性,能够适应更多的数据需求。在函数内部,参数作为变量使用进行数据处理;在调用时,按照定义的顺序传递需要处理的数据。

形参和实参

  • 形参:定义函数时小括号内的参数,是函数接收的参数。
  • 实参:调用函数时小括号内的参数,是传递给函数的数据。

参数的演练

开发一个 sum_2_num 函数,实现两个数字的求和:

  • 初步实现
def sum_2_num(num1, num2):    result = num1 + num2    print(f"{num1} + {num2} = {result}")sum_2_num(10, 20)
  • 问题分析:该函数只能处理固定数值的相加。
  • 优化思路:通过传递参数实现通用性。

参数的实现

修改后的函数:

def sum_2_num(num1, num2):    result = num1 + num2    print(f"{num1} + {num2} = {result}")sum_2_num(50, 20)

函数的返回值

返回值的作用

函数可以通过返回值将结果传递给调用者,便于后续处理。

返回值的实现

修改后的函数:

def sum_2_num(num1, num2):    return num1 + num2result = sum_2_num(10, 20)print(f"计算结果是 {result}")

函数的嵌套调用

嵌套调用的概念

函数内部可以调用另一个函数,形成嵌套调用。执行嵌套函数时,会先完成嵌套函数的任务,再返回到调用位置继续执行。

嵌套调用的示例

定义两个函数 test1test2

def test1():    print("*" * 50)    print("test 1")    print("*" * 50)def test2():    print("-" * 50)    print("test 2")    test1()    print("-" * 50)test2()

模块的使用

模块的概念

模块是Python程序架构的核心概念,类似于工具包。模块文件以 .py 为扩展名,模块中的函数和变量可供外部使用。

模块的导入

在另一个文件中使用模块:

import hm_10_分隔线模块hm_10_分隔线模块.print_line("-", 80)print(hm_10_分隔线模块.name)

模块名的命名规则

模块名应符合标识符规则:可以由字母、下划线和数字组成,但不能以数字开头,也不能与关键字重名。

字节码的作用

Python将源代码编译为字节码文件(如 .pyc),以提高程序启动速度。模块的字节码文件在下次运行时会被加载和使用。

字节码的优化

Python会检查源码和字节码的时间戳,如果源码未修改,将加载现有的字节码文件,避免重复编译。

总结

通过学习函数的定义、调用、参数、返回值和嵌套调用,我们掌握了编写和使用高效代码的核心技能。模块的使用则为代码的复用和管理提供了有力支持。理解这些概念对于编写高效、可维护的Python程序至关重要。

转载地址:http://ixux.baihongyu.com/

你可能感兴趣的文章
npm如何清空缓存并重新打包?
查看>>
npm学习(十一)之package-lock.json
查看>>
npm安装 出现 npm ERR! code ETIMEDOUT npm ERR! syscall connect npm ERR! errno ETIMEDOUT npm ERR! 解决方法
查看>>
npm安装crypto-js 如何安装crypto-js, python爬虫安装加解密插件 找不到模块crypto-js python报错解决丢失crypto-js模块
查看>>
npm安装教程
查看>>
npm报错Cannot find module ‘webpack‘ Require stack
查看>>
npm报错Failed at the node-sass@4.14.1 postinstall script
查看>>
npm报错fatal: Could not read from remote repository
查看>>
npm报错File to import not found or unreadable: @/assets/styles/global.scss.
查看>>
npm报错unable to access ‘https://github.com/sohee-lee7/Squire.git/‘
查看>>
npm淘宝镜像过期npm ERR! request to https://registry.npm.taobao.org/vuex failed, reason: certificate has ex
查看>>
npm版本过高问题
查看>>
npm的“--force“和“--legacy-peer-deps“参数
查看>>
npm的安装和更新---npm工作笔记002
查看>>
npm的常用配置项---npm工作笔记004
查看>>
npm的问题:config global `--global`, `--local` are deprecated. Use `--location=global` instead 的解决办法
查看>>
npm编译报错You may need an additional loader to handle the result of these loaders
查看>>
npm设置淘宝镜像、升级等
查看>>
npm设置源地址,npm官方地址
查看>>
npm设置镜像如淘宝:http://npm.taobao.org/
查看>>