【转载】编程里最有用的偷懒工具「函数」 | 亲子课堂 第 8 课

【Educoder python 作业答案】国防科技大学《大学计算机基础》Python函数(一)※ 【Educoder python 作业答案】国防科技大学《大学计算机基础》Python函数(一)※ 第1关:内置函数 - 让你偷懒的工具 第2关:外置函数numpy-科学计算工具※ 第3关:函数正确调用 - 得到想要的结果 第4关:函数与函数调用 - 分清主次...... 阅读详情

森林

地牢里的关卡主要是偏向锻炼用户的基本语法结构和计算机思维,让大家熟悉极客战记的操作与代码的使用。
来到了森林,关卡将会变得更多更难,同样,到了森林,大家就正式开始接触编程的几大重要知识点:

条件判断
运算符
函数
对象属性

边地之牢

在这里插入图片描述

关卡简介:

「边地之叉」这一关涉及的编程知识为:「函数」和 「参数」,大家需要理解函数及其参数是什么东西,究竟需要如何使用的,即可顺利过关。

通关展示:

在这里插入图片描述

思路讲解

进入本关,刚开始如果你不太明白这一关需要英雄做什么,那么你可以直接点击运行按钮,来观察游戏过程,你需要找到两个要点:

  1. 现有的代码是在让英雄在干什么?
  2. 游戏是为什么失败的
  3. 那么我们应该怎么做?
    在这里插入图片描述

这是在默认代码下的运行情况,可以知道:

  1. 默认代码的作用,就是让英雄循环往返与上方的两个点,上方的敌人一出现,就被英雄消灭了。
  2. 但英雄没有前往下方,导致下方的敌人击杀了村民,游戏失败。
  3. 因此我们可以照着现有的代码略作改动,增加一段攻击下方敌人的代码。

因此,此时的通关思路为:

1. 理解现有代码
2. 对现有代码略作改动,需要实现的功能是:巡逻保卫下方村民安全。

在这里插入图片描述
观察代码,在以往我们的代码都是仅有一个代码块,一个While True无限循环代码块包括了所有的运行代码块,而本关,除了While True代码块以外,还多了一块代码,它就是def函数代码块。

知识点:函数

函数是我们在上一关接触到的知识点
在这里插入图片描述
在Python里,我们使用关键字 def 来定义一个函数:
在这里插入图片描述
关键字def是英文单词define的缩写,具有定义,明确的意思,我们创建一个函数,也叫定义一个函数。
创建函数的格式如下:

def 函数名:
函数里的代码,也叫函数体#这里缩进4格

可以看到,我们创建函数的时候,使用了冒号,为函数创建了一个单独的代码块。

如果不记得代码块的概念了,可以点击链接,回到地牢复习一下:【转载】理解「代码块」概念,养成良好编程习惯 | 亲子课堂 第 3 课

调用函数的格式则是:

函数名()

十分简单。

函数的作用:

如果你有一段非常方便的代码,例如寻找敌人攻击敌人,那你要在每个可能有敌人的地方,都写一遍这一段代码,十分繁琐。

而函数,就是一个偷懒的工具,我们可以把它想象成一个机器人,我们在机器人的程序里(函数体内)写好代码,当我们需要使用这段代码时,呼叫机器人的名字(函数名加括号),就能叫出这机器人来帮忙,而不需要总是写一大串同样的代码了。

也因此,函数内的代码,它在没被调用时,是不会执行的。

在这里插入图片描述

就像图中的函数checkAndAttack,虽然它的代码在最上面,但它的代码不会被执行,而是直接跳过,当后面有需要调用函数时,才运行这一段代码。

了解了函数以后,我们再来了解一下参数

知识点:参数

我们刚刚说,函数就像一个机器人,代码写在机器人的程序里,因此我们可以这么理解,函数和其他的代码,它们是互不相关的,机器人的程序(函数)和正常运行的代码,是两个相互独立的程序。

因此,我们在正常运行的代码里写的一些变量,它们是不能直接使用到函数里的,因为它们是互不相关的两个程序。

而参数,就是帮我们把外界变量传入函数内的工具。

创建参数的方法:

def 函数名(参数名):

直接在函数名的括号内写上你要创建的参数名即可,你还可以创建不止一个参数:

def 函数名(参数名1,参数名2,参数名3……):

参数就是一个变量,它是专门用在函数里的,你可以提前写好它们各自要做的工作:

def Test(t1,t2):
hero.attack(t1)#这里缩进4格
hero.say(t2)#这里缩进4格

然后我们再按顺序,在调用的时候把我们的变量传入参数里:

def Test(t1,t2):
hero.attack(t1)#这里缩进4格
hero.say(t2) #这里缩进4格
enemy1 = hero.findNearestEnemy()
word = “你好!”
Test(enemy1,word)

Test(enemy1,word),就是把enemy1作为t1,word作为t2传入了Test函数里,这样此时执行Test函数的时候,英雄就是去攻击enemy1,并说“你好!”

明白了这两个知识点以后,我们再看到关卡里的代码:
在这里插入图片描述

此时我们就知道,上方一个代码块,是系统已经帮我们写好的攻击敌人,并回到中心点的代码块,无需修改。

那么我们以目前while True内的代码作为模板,写出攻击底部敌人的代码:

1. 移动到下方X标记处。
2. 到达下方后,寻找最近的敌人
3. 使用checkAndAttack()函数攻击下方新找到的敌人

通关代码

在这里插入图片描述

以上便是森林关卡「边地之叉」的过关教学了~

本攻略发于极客战记
极客战记——学编程,用玩的!

Python学习教程之常用的内置函数大全 前言 内置函数,一般都是因为使用比较频繁或是元操作,所以通过内置函数的形式提供出来。在Python中,python给我们提供了很多已经定义好的函数,这里列出常用的内置函数,分享出来供大家参考学习,下面话不多说,来一起看看详细的介绍吧。 一、数学函数 abs() 求数值的绝对值 min()列表的最下值 max()列表的最大值 divmod() 取膜 pow() 乘方 round()浮点数 #abs 绝对值函数 输出结果是1 print abs(-1) #min 求列表最小值 #随机一个1-20的步长为2的列表 lists=range(1,20,2) #求出列 立即下载

相关推荐

产业园区如何高效对接企业技术需求与高校科研成果?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

OJ常用函数/机试常用STL模板

OJ常用函数/机试常用STL模板

你的问题在于,读书太少而想得太多。 1738

国央企创新负责人如何快速掌握本地科技资源分布与匹配情况?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

Python入门之函数调用-----第1关:内置函数 - 让你偷懒的工具

** Python入门之函数调用-----第1关:内置函数 - 让你偷懒的工具 **任务描述 相关知识 数学运算 类型转换 序列操作 对象操作 交互操作 文件操作 编程要求 测试说明 任务描述 我们在编程过程中会用到很多函数,但我们不需要每个函数都自己去编写,因为 Python 内置了很多十分有用的函数,我们在编程过程中可以直接调用。本关目标是让学习者了解并掌握一些常用的 Python 内置函数的...

A258968的博客 4655

国央企创新负责人如何实现科技成果的精准识别与高效筛选?.docx

科易网基于AI模型+行业大数据,在技术转移、成果转化、技术经纪、知识产权、产业创新、科技招商等垂直领域的多样化应用场景,推出科技创新领域的AI+工具与数智化解决方案,推动科技创新与产业创新智能化发展。

Blender到Unreal Engine高效资产迁移:Datasmith插件工作流详解

在3D内容创作与实时渲染领域,数字资产的无损迁移是连接创意设计与最终呈现的关键环节。其核心原理在于通过高保真的数据转换管道,替代传统离散的导出-导入流程,从而保留完整的场景层级、材质属性和关联信息。这项技术的核心价值在于极大提升了跨平台工作流的效率与数据保真度,减少了因格式转换导致的信息丢失和调试成本。它广泛应用于建筑可视化、产品设计、影视预演和游戏开发等场景,使艺术家能在专业DCC工具中专注创作,并一键同步至实时引擎进行交互式渲染与逻辑构建。本文聚焦于实现这一流程的**Datasmith**插件,并深入解

weixin_34110970的博客 268

实验2.6.1 Python基础之之内置函数调用

第1关:内置函数 - 让你偷懒的工具 定义一个函数,功能是判断一个数是否为素数; 调用函数,对输入的整数进行判断。如果是素数则输出为True,否则输出为False。 #输入一个整数n n = int(input()) #********** Begin *********# def prime(m): if m<2: return False for i in range(2,m): if m%i==0: return F

Meropidae的博客 5145

从零开始:kohya_ss环境部署与LoRA/SDXL模型训练实战指南

本文提供了一份详细的kohya_ss环境部署与模型训练实战指南。从零开始,手把手教你使用Conda创建虚拟环境、安装依赖并启动Web GUI界面。核心内容涵盖高质量数据集的准备方法,并重点解析了如何使用kohya_ss工具进行LoRA模型和SDXL模型的微调训练,包括关键参数配置与常见报错解决方案,帮助初学者快速上手AI绘画模型定制。

weixin_29162439的博客 536

Python之函数

一.内置函数-让你偷懒的工具 定义函数prime,功能是判断整数n是否为素数; 若整数n是素数则返回True,不是素数则返回False。 #coding=utf-8 #输入一个整数n n = int(input()) # 请在此添加代码,实现编程要求********** Begin ********* def prime(n): if n == 1: return False else: for i in range(2, n):

KWAIKUN的博客 4710

基于FPGA的图像预处理系统(图)

 北京机械工业学院 韩娟娟 邓文怡 娄小平 由于获取图像的工具或手段的影响,使获取图像无法完全体现原始图像的全部信息。因此,对图像进行预处理就显得非常重要。预处理的目的是改善图像数据,抑制不需要的变形或者增强某些对于后续处理来说比较重要的图像特征。通常根据预处理目的的不同,把预处理技术归为图像增强技术和图像分割技术两类。图像对比度处理是空间域图像增强的一种方法。由于图像灰度范围狭窄会使

lyzhangxianglove的专栏 1780

便携式水下动态实时视频色彩还原设备,一键快速实现对水下偏色视频和图像的色彩还原处理

便携式水下动态实时视频色彩还原,一键快速对水下图像进行色彩校正,清晰度提升和亮度均衡处理,为水下资源勘探和科学考古,海洋生态环境监测,水下机器作业等应用提供有力的协助

weixin_43518680的博客 633

Python——内置函数 :让你偷懒的工具

内置函数 - 让你偷懒的工具 我们在编程过程中会用到很多函数,但我们不需要每个函数都自己去编写,因为 Python 内置了很多十分有用的函数,我们在编程过程中可以直接调用。本关目标是让学习者了解并掌握一些常用的 Python 内置函数的用法。 相关知识 数学运算 abs():返回数值的绝对值,例如: abs(-4) 4 divmod():返回两个数值的商和余数,例如: divmod(7,2) (3,1) max():返回元素中的最大值,例如: max(2,6,1,7) 7 min()

yelitoudu的博客 3089

Tip-Adapter: Training-free Adaption of CLIP for Few-shot Classification

对比式视觉-语言预训练,也称为CLIP,通过大规模的图像-文本对来学习视觉表示,为zero-shot知识迁移展示了新的范式。它在下游任务上展现出令人瞩目的性能,实现了zeri-shot的知识迁移。为了进一步增强CLIP的适应能力,现有方法提出了微调可学习模块的方法,显著提高了少样本情况下的性能,但也引入了额外的训练时间和计算资源。在本文中,我们提出了一种适用于CLIP的无需训练的少样本分类方法,称为Tip-Adapter。

qq_43800752的博客 1164

Python函数(一)※

python函数中的简单计算

m0_70469414的博客 1854

【ros】ROS1的安装和相关使用方法

主要学习ros相关内容

Greary的博客 2379

Python——函数正确调用 :得到想要的结果

函数正确调用 - 得到想要的结果 函数被定义后,本身是不会自动执行的,只有在被调用后,函数才会被执行,得到相应的结果。主要是让学习者了解并掌握函数调用的相关知识。 相关知识 定义函数与调用函数的顺序 在定义了函数之后,就可以调用该函数了。但是在 Python 中我们要注意一个关键点,就是Python不允许前向引用,即在函数定义之前,不允许调用该函数。例如: print plus(1,2) def plus(a,b): return a+b 运行结果为: NameError: name

yelitoudu的博客 5335

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

codecombat计算机科学入门四(python)

1. 尘埃# &lt;%= ten_munchkins %&gt;​ attacks = 0 while attacks &lt; 10: # &lt;%= attackNearest %&gt; enemy = hero.findNearestEnemy() if enemy: hero.attack(enemy) # &lt;%= explai...

Within的博客 1万+

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

假人有限元模型

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

codecombat计算机科学入门三(Python)

1.友人和敌人while True: friend = hero.findNearestFriend() if friend: hero.say("To battle, " + friend.id + "!") # 寻找最近的敌人,然后让他们滚蛋 enemy = hero.findNearestEnemy() if enemy: ...

Within的博客 2万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

codecombat计算机科学入门一(python)

第一大关-计算机科学入门目录1. Kithgard地牢hero.moveRight()2. 深藏的宝石hero.moveRight() hero.moveDown() hero.moveRight()3. 幽影卫士hero.moveRight() hero.moveUp() hero.moveRight() hero.moveDown() hero.moveRight()3a. 逆时针回转hero...

Within的博客 5963

内置函数 - 让你偷懒的工具

任务描述 我们在编程过程中会用到很多函数,但我们不需要每个函数都需要自己去编写,因为Python内置了很多十分有用的函数,我们在编程过程中可以直接调用。 本关目标是让读者了解并掌握一些常用的Python内置函数的用法。 相关知识 数学运算 abs():返回数值的绝对值 例如: >>> abs(-4) 4 divmod():返回两个数值的商和余数 例如: >>> divmod(7,2) (3,1) max():返回元素中的最

LeBornJas的博客 807

Python入门之函数调用——第1关:内置函数 - 让你偷懒的工具

任务描述 我们在编程过程中会用到很多函数,但我们不需要每个函数都需要自己去编写,因为Python内置了很多十分有用的函数,我们在编程过程中可以直接调用。 本关目标是让读者了解并掌握一些常用的Python内置函数的用法。 相关知识 数学运算 abs():返回数值的绝对值 例如:&gt;&gt;&gt; abs(-4)4 divmod():返回两个数值的商和余数 例如:&gt;&gt;&g...

u012589022的博客 1万+

Python入门之函数调用(三)

@R星校长 第3关:函数与函数调用 - 分清主次 我们要学习函数与函数之间的调用,就应该对函数调用的顺序与参数有清晰的认识,我们将会从五种情况让读者了解并掌握函数与函数之间的调用的基本关系和联系。 第一种情况 程序代码如下: def x(f): def y(): print(1) return y def f(): print(2) x(f) 运行结果: 无结果 分析:因为第9行中的x(f)中的f没有带括号,f只是一个普通的参数,所以程序只调用执行了x(f)函数.

qq_44745905的博客 4437
上一篇: 【转载】使用「多分支判断」,让程序更智能 | 亲子课堂 第 7 课
下一篇: 【转载】用「变量输出」做一个全自动的说话机器人 | 亲子课堂 第 9 课
「已注销」
博客等级 码龄7年 13粉丝 9原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值