Python-函数(三)

卫朋:IPD流程落地——产品计划阶段拆解 IPD计划阶段拆解 阅读详情

局部变量

什么是局部变量?

  • 局部变量,就是在函数内部定义的变量
  • 不同的函数,可以定义相同的名字的局部变量,但是各用个的不会产生影响
  • 局部变量的作用,为了临时保存数据需要在函数中定义变量来进行存储,这就是它的作用

全局变量

如果一个变量,既能在一个函数中使用,也能在其他的函数中使用,这样的变量就是全局变量

demo

a = 100
def test1():
    print(a)
def test2():
    print(a)

test1()
test2()

执行效果:

100
100

修改全局变量

既然全局变量,就是能够在所以的函数中进行使用,可以在要修改之前使用global来进行声明,然后才能对全局变量进行修改。

总结

  • 在函数外边定义的变量叫做全局变量
  • 全局变量能够在所有的函数中进行访问
  • 如果在函数中修改全局变量,那么就需要使用global进行声明,否则出错
  • 如果全局变量的名字和局部变量的名字相同,那么使用的是局部变量的

可变类型的全局变量

  • 在函数中不使用global声明全局变量时不能修改全局变量的本质是不能修改全局变量的指向,即不能将全局变量指向新的数据。
  • 对于不可变类型的全局变量来说,因其指向的数据不能修改,所以不使用global时无法修改全局变量。
  • 对于可变类型的全局变量来说,因其指向的数据可以修改,所以不使用global时也可修改全局变量。

可变类型与不可变类型

可变类型,值可以改变:

  • 列表
  • 字典

不可变类型,值不可以改变:

  • 数值类型 int, long, bool, float
  • 字符串 str
  • 元组 tuple

匿名函数

用lambda关键词能创建小型匿名函数。这种函数得名于省略了用def声明函数的标准步骤。
lambda函数的语法只包含一个语句

test1 = lambda x:x+100
result = test3(10)
print("result=%d" % result)

运行效果

result = 110

匿名函数的应用

想一想,下面的数据如何指定按age或name排序?

stus = [
    {"name":"zhangsan", "age":18}, 
    {"name":"lisi", "age":19}, 
    {"name":"wangwu", "age":17}
]
  • 按name排序

    >>> stus.sort(key = lambda x:x['name'])
    >>> stus
    [{'age': 19, 'name': 'lisi'}, {'age': 17, 'name': 'wangwu'}, {'age': 18, 'name': 'zhangsan'}]
    
  • 按age排序

    >>> stus.sort(key = lambda x:x['age'])
    >>> stus
    [{'age': 17, 'name': 'wangwu'}, {'age': 18, 'name': 'zhangsan'}, {'age': 19, 'name': 'lisi'}]
    
Plant Simulation智能行车/天车/起重机建模(1)-基本对象说明 摘要: MultiPortalCrane(多门式起重机)是一种灵活物料搬运设备,适用于造船、钢铁等行业,支持零件预组装、钢板/钢卷智能料场管理及设备装卸。其特点包括: 多门架协同:支持同轨道多门架运行,内置防撞检测; 模块化控制:可独立调节门架、小车及吊钩的速度、加速度和悬臂长度; 多样化搬运:通过目标位置设置或连接器实现零件运输; 故障与统计:可配置MTTR和可用率,实时监控各部件状态。 通过对话框可自定义轨道尺寸、门架数量及运动参数,并支持编程调用(如getPortals方法)。适用于需高精度定位和协同 阅读详情

相关推荐

【验证技能树】UVM 源码解读01 -- UVM本质上就是软件工程方法论在芯片验证领域的应用

文章摘要: UVM(通用验证方法学)是基于SystemVerilog的芯片验证框架,采用组件化、面向对象和事务级抽象设计。其核心在于职责分离与数据流,通过Driver、Monitor、Sequencer等模块协作实现高效验证。UVM强调复用性、可扩展性和可维护性,类似软件工程的模块化与低耦合原则。理解其体系结构比记忆API更重要,有助于灵活组合组件并提升验证效率。UVM不仅是工具,更融合了软件工程思维,推动验证工作向自动化、系统化发展。掌握UVM底层逻辑能优化验证环境设计,适用于从IP到SoC的多层级验证场

qq_45869788的博客 1043

python第十课函数(二)

局部变量<1>什么是局部变量如下图所示: <2>小总结局部变量,就是在函数内部定义的变量不同的函数,可以定义相同的名字的局部变量,但是各用个的不会产生影响局部变量的作用,为了临时保存数据需要在函数中定义变量来进行存储,这就是它的作用  全局变量<1>什么是全局变量如果一个变量,既能在一个函数中使用,也能在其他的函数中使用,这样的变量就是全局变量demo如下: ...

三缺 649

MIPI CSI-2 协议解析

CSI-2标准协议前言一、Overview of CSI-2二、CSI-2 layer Definitions三、 Camera Control Interface(CCI)3.1 数据传输协议(Data Transfer Protocol)3.1.1 消息类型(Message Type)3.1.2 读写操作(Read/Write Operations)3.1.2.1 随机位置单次读3.1.2.2 当前位置单次读3.1.2.3 随机位置连续读3.1.2.4 当前位置连续读3.1.2.5 随机位置单次写3.1

Lucky 3万+

递归函数、匿名函数、列表推导式

递归函数<1>什么是递归函数通过前面的学习知道一个函数可以调用其他函数。如果一个函数在内部不调用其它的函数,而是自己本身的话,这个函数就是递归函数。<2>递归函数的作用举个例子,我们来计算阶乘 n! = 1 * 2 * 3 * ... * n解决办法1:看阶乘的规律1! = 1 2! = 2 × 1 = 2 × 1! 3! = 3 × 2 × 1 = 3 × 2! 4! =...

ITZY的博客 466

保姆级教程:在Ubuntu 20.04上搞定PX4飞控与T265的视觉定位(附避坑指南)

本文提供在Ubuntu 20.04上配置PX4飞控与T265视觉定位系统的详细教程,涵盖驱动安装、ROS与MAVROS桥接、PX4参数调优及故障排查。通过实测验证的步骤和避坑指南,帮助开发者实现厘米级精度的视觉定位,特别适合室内无人机应用。

weixin_29038155的博客 251

网络安全实战:从Wireshark到BurpSuite的抓包技巧解析

本文深入解析了Wireshark和BurpSuite在网络安全抓包中的实战技巧,从基础对比到高级过滤、核心模块应用及安全测试避坑指南。通过详细的操作步骤和案例分析,帮助读者掌握数据包抓取与分析的核心技能,提升网络安全防护能力。

weixin_29207533的博客 574

day18 函数强化练习

函数应用:学生管理系统import time import os # 定一个列表,用来存储所有的学生信息(每个学生是一个字典) info_list = [] def print_menu(): print("---------------------------") print(" 学生管理系统 V1.0") print(" 1:添加学生") pri...

abc____123的博客 337

AB脉冲详解(编码器,PLC,上位机)

编码器线有些是用不到的。Z脉冲:360度中,只有1度是输出,输出能力是。编码器实际就是发光二极管,所以电流超过20ma会缩短寿命或损坏。

cfqq1989的博客 1万+

python 三引号_2.python之print()函数

如果你已经按照上一篇的课程搞定了python环境,那么便可以直接进入本节课的学习。本节课要讲述的内容是print()函数。在课程开始之前,要重点说明一件事,代码输入时必须将输入法切换成英文状态。因为print()函数中的括号是英文括号,未切换程序将会报错。1、print()函数的作用print()函数在python中用于打印,把括号内的内容打印在控制台或者终端里面,是python中很常见的操作。有...

weixin_39956350的博客 392

2020年信奥赛C++提高组csp-s初赛真题及答案解析(阅读程序第3题)

2020年信奥赛C++提高组csp-s初赛真题及答案解析(阅读程序第3题)

王老师青少年编程 992

玩转Docker | 使用Docker部署MediaCMS内容管理系统

玩转Docker | 使用Docker部署MediaCMS内容管理系统

qq_59334230的博客 2920

python学习002——python三大基础函数

python学习002_python三大基础函数python中的过滤器filter()函数,map函数,reduce函数

qq_54000767的博客 771

第五章-AllData集成DataSophon作为数据平台功能

🔥🔥 AllData大数据产品是可定义数据中台,以数据平台为底座,以数据中台为桥梁,以机器学习平台为中层框架,以大模型应用为上游产品,提供全链路数字化解决方案。全新会员商业版 X 微信群:https://docs.qq.com/doc/DVHlkSEtvVXVCdEFo

AllDataDC的博客 1638

python计算三个数的和_python函数的应用很广,用python函数求三个数的和和平均值...

python函数在实际中是需要经常应用到的,对代码进行封装成功能模块,而python函数应用有哪些呢?下面羽忆教程为你介绍用python函数打印图形和数算。python函数应用下面小编会用两个简单python函数打印横线以及python函数求和以及平均值的例子为你展示python函数应用,提升你对python函数的理解。python函数自定义打印横线一般打印横线只需要一个print输出就可以解决,...

weixin_39602891的博客 3422

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Python 实验三 函数

编写一个函数func(str),计算并返回字符串str中的数字、字母及其他类型字符的个数在func函数中利用元组定义数字、字母、空格、其它,并初始化为0。之后利用for循环对字符遍历,依次if判断是哪种字符类型内置函数: 结果 验证哥德巴赫猜想:任意一个大于2的偶数都可以表示成2个素数之和。编写一个函数isGDBH(n)将传入的6~100之间的偶数表示为2个素数之和,结果保存在列表中返回。例如,函数传入参数10,则返回[“10=3+7”, “10=5+5”]输入一个数,验证输入的数是否在6~100之间,调用

张时贰的博客 5640

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

python函数三

主要讲述高阶函数的用法及装饰器的使用

shell_x的博客 265

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

python3三大常用函数之zip、map、reduce介绍

在python编码过程中,实际上是写机器学习代码过程中,我发现有三个高频函数被使用,也就是这篇博客要介绍的zip、map以及reduce三大函数。 其中map、zip是python的内置函数,也就是全局函数,在python3中reduce函数不再是内置函数,它被放在了functools模块中了。 对于内置函数我们可以在python窗口界面中通过help(func)命令方式获取其使用方法。 一、zi...

Yoryky的专栏 1136

python实验三 函数

3. 拓展 :科赫曲线正向、反向绘制,加入绘制速度、绘制颜色等额外 功能 提示 :递归函数需注意终止条件,避免栈溢。draw_koch_curve(order=3, speed=3) # 绘制3阶科赫曲线,速度3。1. 基础 :编写函数 cal_factorial(n)计算阶乘(循环实现)。raise ValueError("n必须为非负整数")2. 进阶 :用递归实现斐波那契数列(考虑添加缓存优化)。实验 3 函数与代码复用(2 学时) 目的:理解。

weixin_74937211的博客 1635

python复习三之函数

知识点汇总: 1-函数的概念: 1-就是一段代码 2-一段操作流程 优点: 1- 代码量少-简洁 2- 维护起来方便—在函数的定义进行修改 2-函数的定义: 1-def 函数名(): 函数内容 2- 函数的定义是不会执行函数内容的代码的! 3-案例: def func(): print(‘step1’) print(‘step2’) 4- type(func) ----<class ‘fu...

zy50721235的博客 2858

Python函数三

Python函数三一、高阶函数二、闭包三、装饰器的引入四、装饰器 一、高阶函数 接收函数作为参数,或者将函数作为返回值返回的函数就是高阶函数 二、闭包 将函数作为返回值也是高阶函数我们也称为闭包 闭包的好处 通过闭包可以创建一些只有当前函数能访问的变量 可以将一些私有数据藏到闭包中 形成闭包的条件 函数嵌套 将内部函数作为返回值返回 内部函数必须要使用到外部函数的变量 三、装饰器的引入 我们可以直接通过修改函数中的代码来完成需求,但是会产生以下一些问题 如果修改的函数多,修改起来会比

wangkei_cn的博客 114

【Python】实验三 Python函数

一、实验目的: 1、熟练函数的定义及表示 2、掌握pip安装第三方python库 3、灵活运用第三方库解决实际应用。 二、实验要求: 1、要求有任务独立在计算独立完成实验任务 2、每题前面要有注释说明班级、学号姓名、以及题目说明 3、所有编写程序要求编程界面友好,互动性好。 4、课程结束前在学习通提交课内完成任务的代码,课后补充完成本实验报告, 三、实验内容: 编写程序:读取指定EXCEL grade.xlsx 中的成绩,并生成统计图表: 说明 1)定义getScores(filepath),返回成

m0_51011320的博客 753

Python(三)之函数

申明:资料来源于网络及书本,通过理解、实践、整理成学习笔记。 文章目录函数定义函数参数变量作用域lambda表达式递归函数 函数定义 定义一个函数只要以"def"开头即可,Python内置了很多有用的函数,我们可以直接调用。 def function_name(arg): function body return value 函数参数 变量作用域 lambda表达式 递归函数 ...

贺加贝的博客 3191

python中print函数 以及单引号、双引号、三引号

直接面对——引号,就是为了保证打印出来的东东符合预期 如:print("小菜菜") 结果是: ================1=============================================2=============================================3============================================...

weixin_34233856的博客 2484

【python】写一个函数,可以通过输入的参数,求三个数的和/平均值。(调用上面的函数)

三个数的求和,举例了五个简单相似的例子 #第一种 def sum(a,b,c): return a+b+c print(sum(1,2,3)) #第二种 def sum(a,b,c): return a+b+c he=sum(1,2,3) print(he) #第三种 def sum(a,b,c): he=a+b+c return he print(sum(1,2,3)) #第四种 def he(a,b,c): sum = a+b+c

qq_25979659的博客 1万+

python实验三 函数的应用

【代码】python实验三 函数的应用。

木子一个Lee的博客 1754

python笔记三:函数

一.变量的作用域 1.用globals和locals显示出全局限量和局部变量 print(locals()) print(globals()) 2.可以用global声明全局变量 def func(): global b b=100 print(b) func() #不调用func,直接print(b)会报错,不调用func就没有执行声明全局变量b print(...

qq_41518266的博客 313
上一篇: Python-函数(二)-函数的四种类型
下一篇: Python-文件操作
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值