【雕爷学编程】MicroPython手册之内置函数 abs(x)

在这里插入图片描述

MicroPython是为了在嵌入式系统中运行Python 3编程语言而设计的轻量级版本解释器。与常规Python相比,MicroPython解释器体积小(仅100KB左右),通过编译成二进制Executable文件运行,执行效率较高。它使用了轻量级的垃圾回收机制并移除了大部分Python标准库,以适应资源限制的微控制器。

MicroPython主要特点包括:
1、语法和功能与标准Python兼容,易学易用。支持Python大多数核心语法。
2、对硬件直接访问和控制,像Arduino一样控制GPIO、I2C、SPI等。
3、强大的模块系统,提供文件系统、网络、图形界面等功能。
4、支持交叉编译生成高效的原生代码,速度比解释器快10-100倍。
5、代码量少,内存占用小,适合运行在MCU和内存小的开发板上。
6、开源许可,免费使用。Shell交互环境为开发测试提供便利。
7、内置I/O驱动支持大量微控制器平台,如ESP8266、ESP32、STM32、micro:bit、掌控板和PyBoard等。有活跃的社区。

MicroPython的应用场景包括:
1、为嵌入式产品快速构建原型和用户交互。
2、制作一些小型的可 programmable 硬件项目。
3、作为教育工具,帮助初学者学习Python和物联网编程。
4、构建智能设备固件,实现高级控制和云连接。
5、各种微控制器应用如物联网、嵌入式智能、机器人等。

使用MicroPython需要注意:
1、内存和Flash空间有限。
2、解释执行效率不如C语言。
3、部分库函数与标准版有差异。
4、针对平台优化语法,订正与标准Python的差异。
5、合理使用内存资源,避免频繁分配大内存块。
6、利用原生代码提升速度关键部位的性能。
7、适当使用抽象来封装底层硬件操作。

总体来说,MicroPython让Python进入了微控制器领域,是一项重要的创新,既降低了编程门槛,又提供了良好的硬件控制能力。非常适合各类物联网和智能硬件的开发。

在这里插入图片描述

三、MicroPython 内置函数
MicroPython是一种精简版的Python语言,它具有一些内置函数,这些函数可以在MicroPython环境中直接使用。以下是一些常用的MicroPython内置函数:

print(value):打印输出给定的值。
len(sequence):返回序列(字符串、列表、元组等)的长度。
input(prompt):从用户输入获取数据,并返回作为字符串。
str(object):将对象转换为字符串表示形式。
int(x):将参数转换为整数。
float(x):将参数转换为浮点数。
bool(x):将参数转换为布尔值。
range(start, stop, step):返回一个迭代器,生成从start到stop(不包括stop)的整数序列,步长为step(可选,默认为1)。
type(object):返回对象的类型。
dir([object]):返回对象的属性列表。如果没有提供参数,则返回当前作用域的所有名称。
abs(x):返回参数的绝对值。
min(iterable):返回可迭代对象中的最小值。
max(iterable):返回可迭代对象中的最大值。
sum(iterable):返回可迭代对象中所有元素的和。
round(number, ndigits):将浮点数四舍五入到指定的小数位数。

这些是MicroPython中一些常用的内置函数。它们可以执行各种常见的操作,例如打印输出、类型转换、数学运算和迭代等。请注意,MicroPython的内置函数集相对较小,与标准的Python语言有所不同。

在这里插入图片描述
MicroPython的内置函数 abs(x) 是指在MicroPython中用来获取一个数值的绝对值的函数,它是Python语言的基础。例如,abs(-3) 会返回 3,表示一个负数的绝对值。这个函数的功能与标准的Python 3基本一致,你可以去查看完整的文档。

MicroPython的内置函数 abs(x) 具有以下几个主要特点:

1、简单易用:MicroPython的内置函数 abs(x) 只需要在代码中输入函数名和括号,并在括号中提供一个数值,就可以返回该数值的绝对值。你可以使用任何类型或格式的数值作为参数,例如整数,浮点数,复数等。
2、功能强大:MicroPython的内置函数 abs(x) 可以获取任何数值的绝对值,无论是正数,负数,零,还是复数。你可以使用该函数来生成和处理各种类型和格式的绝对值,例如进行算术运算,比较运算,逻辑运算等。
3、兼容性好:MicroPython的内置函数 abs(x) 与标准的Python 3基本保持一致,这意味着你可以在不同的平台和设备上运行相同的代码,而不需要做太多的修改。这也有利于你学习和转换到其他版本的Python。

MicroPython的内置函数 abs(x) 可以应用于各种场景,例如:

1、数据处理:你可以使用MicroPython的内置函数 abs(x) 来获取各种类型和格式的数据的绝对值,例如温度,距离,速度等。你可以根据数据的绝对值来选择合适的操作方法,并使用 print 函数或其他方式来输出结果。
2、算法设计:你可以使用MicroPython的内置函数 abs(x) 来获取各种数值的绝对值,并利用绝对值的特性来设计和实现各种算法,例如递归,循环,分支等。你可以利用函数的返回值和参数来传递数据和状态,并使用 print 函数或其他方式来输出结果。
3、交互式编程:你可以使用MicroPython的内置函数 abs(x) 来获取用户或其他设备输入或输出的值的绝对值,并与之进行交互,例如获取输入,打印输出,抛出异常等。你可以根据用户或设备输入或输出的值的绝对值来调整你的代码逻辑或输出格式。

使用MicroPython的内置函数 abs(x) 时,需要注意以下几点:

1、参数类型:MicroPython的内置函数 abs(x) 可以接受任何类型或格式的数值作为参数,并返回该数值所属类(class)对象中定义或继承的 abs 方法(如果存在)返回的结果。如果参数是一个复数,则返回其模长(即平方根下实部平方加虚部平方)。如果参数是其他类型,则引发 TypeError 异常。
2、参数个数:MicroPython的内置函数 abs(x) 只接受一个参数,并返回一个数值。如果传递多个或零个参数,则引发 TypeError 异常。
3、返回值:MicroPython的内置函数 abs(x) 总是返回一个数值,表示参数的绝对值。如果想要获取一个字符串形式,则可以使用 str 函数进行转换。

下面是一些使用MicroPython内置函数 abs(x) 的实际运用程序案例:

案例一:编写一个程序,让用户输入两个数字,并计算它们之差的绝对值。

# 获取用户输入的第一个数字,并转换为浮点数
x = float(input("Enter the first number: "))

# 获取用户输入的第二个数字,并转换为浮点数
y = float(input("Enter the second number: "))

# 调用函数,计算两个数字之差的绝对值,并赋值给变量 z
z = abs(x - y)

# 使用 print 函数打印 z
print("The absolute value of the difference is", z)

案例二:编写一个程序,让用户输入一个复数,并计算其模长。

# 获取用户输入的一个复数,并转换为复数类型
c = complex(input("Enter a complex number: "))

# 调用函数,计算复数的模长,并赋值给变量 m
m = abs(c)

# 使用 print 函数打印 m
print("The modulus of the complex number is", m)

案例三:编写一个程序,定义一个自定义类(class)Vector,并重载 abs 方法,然后创建一个实例对象 v,并打印出其绝对值。

# 定义一个自定义类(class)Vector
class Vector:
    # 定义一个初始化方法,接受两个参数 x 和 y,并赋值给实例属性
    def __init__(self, x, y):
        self.x = x
        self.y = y

    # 定义一个重载 __abs__ 方法,返回向量的模长(即平方根下x平方加y平方)
    def __abs__(self):
        return (self.x ** 2 + self.y ** 2) ** 0.5

# 创建一个实例对象 v,并传递两个参数 3 和 4
v = Vector(3, 4)

# 调用函数,获取 v 的绝对值,并赋值给变量 a
a = abs(v)

# 使用 print 函数打印 a
print("The absolute value of the vector is", a)

案例四:计算数值的绝对值:

num = -5
abs_value = abs(num)
print("数值的绝对值:", abs_value)

在这个示例中,使用abs(num)函数计算变量num的绝对值。然后,将结果打印输出。输出结果为:5,表示数值的绝对值为5。

案例五:判断两个数之间的差值:

a = 10
b = 7
diff = abs(a - b)
print("两个数之间的差值:", diff)

在这个示例中,有两个变量a和b,使用abs(a - b)函数计算它们之间的差值的绝对值。然后,将结果打印输出。输出结果为:3,表示两个数之间的差值的绝对值为3。

案例六:检查数值是否超出限制:

value = -15
limit = 10
if abs(value) > limit:
    print("数值超过限制")

在这个示例中,有一个变量value表示某个数值,以及一个变量limit表示限制值。使用abs(value)函数获取数值的绝对值,并与限制值进行比较。如果绝对值大于限制值,则打印输出"数值超过限制"。

案例七:获取数值的绝对值

num = -10
abs_num = abs(num)
print("绝对值:", abs_num)

在这个案例中,使用 abs() 函数获取数值 num 的绝对值,并将结果输出。无论 num 是正数还是负数,都会返回其绝对值。

案例八:计算两个数值的差的绝对值

num1 = 5
num2 = 12
diff = abs(num1 - num2)
print("差的绝对值:", diff)

在这个案例中,使用 abs() 函数计算数值 num1 和 num2 的差的绝对值,并将结果输出。这对于计算两个数值之间的距离或差异非常有用。

案例九:判断数值与特定阈值的关系

value = -3.5
threshold = 5.0
if abs(value) > threshold:
    print("超过阈值")
else:
    print("未超过阈值")

在这个案例中,使用 abs() 函数获取数值 value 的绝对值,并与阈值 threshold 进行比较。根据比较结果,输出相应的信息,判断数值与阈值的关系。

这些案例展示了 MicroPython 中 abs(x) 函数的实际运用。通过使用 abs() 函数,可以获取数值的绝对值,计算差的绝对值,或进行数值比较等操作。请注意,abs() 函数适用于数值类型,不适用于其他类型的对象。

在这里插入图片描述

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
在「雕爷学编程」Arduino动手做的实验中,四位遥控是指使用了2262/2272四路无线遥控套件M4非锁接收板配合四键无线遥控器模组的实验。根据提供的引用内容,有两个示例程序可以用来接收遥控信号。 第一个示例程序是实验程序二,在Arduino参考开源代码中给出了实现接收的简单示例。程序通过RCSwitch库实现了接收器的初始化,然后进入循环,在循环中判断是否有可用的遥控信号,如果有,则获取接收到的值,并显示在串口上。 第二个示例程序是实验程序一,也是通过RCSwitch库实现的。和实验程序二类似,程序初始化了接收器,并进入循环。在循环中,如果有可用的遥控信号,则调用output函,将接收到的值、位长、延迟和原始据显示在串口上。 根据这两个示例程序,你可以根据实际情况选择使用其中的一个或两个来进行四位遥控实验。你需要根据引脚连接和遥控器的编码方式进行相应的配置和调试。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【雕爷学编程】Arduino动手做(103)---四路无线遥控套件](https://blog.csdn.net/weixin_41659040/article/details/125220869)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

驴友花雕

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值