【雕爷学编程】MicroPython手册之内置函数 range(start, stop, step)

在这里插入图片描述

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的内置函数 range(start, stop, step) 是指在MicroPython中用来创建一个整数序列的函数,它是Python语言的基础。例如,range(1, 10, 2) 会返回 [1, 3, 5, 7, 9],表示从1开始,每隔2个数,到10(不包括)结束的一个列表。这个函数的功能与标准的Python 3基本一致,你可以去查看完整的文档。

MicroPython的内置函数 range(start, stop, step) 具有以下几个主要特点:

1、简单易用:MicroPython的内置函数 range(start, stop, step) 只需要在代码中输入函数名和括号,并在括号中提供三个参数,就可以返回一个整数序列。你可以使用任何整数作为参数,例如正数,负数,零等。
2、功能强大:MicroPython的内置函数 range(start, stop, step) 可以创建任何满足条件的整数序列,无论是递增的还是递减的。你可以使用该函数来生成和处理各种类型和格式的整数序列,例如进行循环,切片,排序,查找,替换等操作。
3、兼容性好:MicroPython的内置函数 range(start, stop, step) 与标准的Python 3基本保持一致,这意味着你可以在不同的平台和设备上运行相同的代码,而不需要做太多的修改。这也有利于你学习和转换到其他版本的Python。

MicroPython的内置函数 range(start, stop, step) 可以应用于各种场景,例如:

1、数据处理:你可以使用MicroPython的内置函数 range(start, stop, step) 来创建各种类型和格式的整数序列,例如从0到100(不包括)的偶数序列,从10到0(不包括)的递减序列等。你可以对整数序列进行切片,拼接,排序,查找,替换等操作,并使用 print 函数或其他方式来输出结果。
2、算法设计:你可以使用MicroPython的内置函数 range(start, stop, step) 来创建各种满足条件的整数序列,并利用整数序列的特性来设计和实现各种算法,例如递归,循环,分支等。你可以利用函数的返回值和参数来传递数据和状态,并使用 print 函数或其他方式来输出结果。
3、交互式编程:你可以使用MicroPython的内置函数 range(start, stop, step) 来创建各种满足用户或其他设备需求的整数序列,并与之进行交互,例如获取输入,打印输出,抛出异常等。你可以根据用户或设备输入或输出的值来调整你的代码逻辑或输出格式。

使用MicroPython的内置函数 range(start, stop, step) 时,需要注意以下几点:

1、参数类型:MicroPython的内置函数 range(start, stop, step) 只接受整数作为参数,并根据参数生成一个整数序列。如果参数是浮点数或其他类型,则会引发 TypeError 异常。
2、参数个数:MicroPython的内置函数 range(start, stop, step) 可以接受一个、两个或三个参数,并返回一个整数序列。如果只传递一个参数,则表示终止值(不包括),起始值默认为0,步长默认为1。如果传递两个参数,则表示起始值(包括)和终止值(不包括),步长默认为1。如果传递三个参数,则表示起始值(包括),终止值(不包括)和步长。如果传递多个或零个参数,则引发 TypeError 异常。
3、返回值:MicroPython的内置函数 range(start, stop, step) 总是返回一个可迭代的对象,表示一个整数序列。如果参数不满足条件,则返回一个空的对象。如果想要获取一个列表,可以使用 list 函数进行转换。

下面是一些使用MicroPython内置函数 range(start, stop, step) 的实际运用程序案例:

案例一:编写一个程序,打印出1到100(不包括)之间的所有奇数。

# 使用 range 函数创建一个从1开始,每隔2个数,到100(不包括)结束的整数序列
r = range(1, 100, 2)

# 使用 for 循环遍历整数序列中的每个元素
for i in r:
    # 使用 print 函数打印每个元素,以空格分隔
    print(i, end=" ")

# 使用 print 函数换行
print()

案例二:编写一个程序,计算1到10(包括)之间的所有整数的阶乘,并打印结果。

# 定义一个变量,用于存储阶乘的结果,初始值为1
f = 1

# 使用 range 函数创建一个从1开始,到11(不包括)结束的整数序列
r = range(1, 11)

# 使用 for 循环遍历整数序列中的每个元素
for i in r:
    # 将阶乘的结果乘以当前元素,并赋值给变量
    f = f * i
    # 使用 print 函数打印当前元素和阶乘的结果
    print(i, "! =", f)

案例三:编写一个程序,让用户输入一个正整数 n,并打印出 n 行的杨辉三角。

# 获取用户输入的一个正整数 n,并转换为整数
n = int(input("Enter a positive integer: "))

# 定义一个空列表,用于存储杨辉三角的每一行
t = []

# 使用 range 函数创建一个从0开始,到 n 结束的整数序列
r = range(n)

# 使用 for 循环遍历整数序列中的每个元素
for i in r:
    # 定义一个空列表,用于存储当前行的每个元素
    row = []
    # 使用 range 函数创建一个从0开始,到 i+1 结束的整数序列
    s = range(i + 1)
    # 使用 for 循环遍历整数序列中的每个元素
    for j in s:
        # 如果 j 是0或i,则将当前行的元素设为1,并添加到列表中
        if j == 0 or j == i:
            row.append(1)
        # 否则,将当前行的元素设为上一行相邻两个元素之和,并添加到列表中
        else:
            row.append(t[i - 1][j - 1] + t[i - 1][j])
    # 将当前行的列表添加到杨辉三角的列表中
    t.append(row)

# 使用 for 循环遍历杨辉三角的列表中的每个元素(即每一行)
for row in t:
    # 使用 print 函数打印每一行,以空格分隔
    print(*row)

案例四:循环迭代:

for i in range(1, 10, 2):
    print(i)

在这个示例中,使用range(1, 10, 2)生成一个整数序列,从1开始,以步长2逐步增加,直到小于10。在循环中,依次取出序列中的每个整数,并将其打印输出。输出结果为:1, 3, 5, 7, 9。

案例五:计算序列中的和:

total = 0
for num in range(1, 101):
    total += num

print("1到100的和:", total)

在这个示例中,使用range(1, 101)生成一个整数序列,从1开始,逐步增加1,直到小于101。在循环中,将序列中的每个整数累加到变量total中。最后,打印输出序列中所有整数的和。

案例六:生成列表:

even_nums = list(range(0, 20, 2))
print("前20个偶数:", even_nums)

在这个示例中,使用range(0, 20, 2)生成一个整数序列,从0开始,以步长2逐步增加,直到小于20。然后,使用list()函数将整数序列转换为列表。最后,打印输出包含前20个偶数的列表。这些是使用MicroPython内置函数range(start, stop, step)的三个实际运用程序案例。它们可以用于循环迭代、计算序列中的和以及生成特定规律的整数列表等场景。请注意,range()函数生成的序列不包括stop参数对应的整数值,它只生成小于stop的整数。

案例七:使用默认步长生成数字序列

for i in range(5):
    print(i)

在这个案例中,使用 range() 函数生成一个从 0 到 4 的数字序列,默认步长为 1。通过遍历这个序列,可以逐个输出数字。

案例八:指定起始值、终止值和步长生成数字序列

for i in range(1, 10, 2):
    print(i)

在这个案例中,使用 range() 函数生成一个从 1 到 9 的数字序列,步长为 2。通过遍历这个序列,可以输出奇数。

案例九:计算序列中数字的总和

total = 0
for i in range(1, 6):
    total += i
print("总和:", total)

在这个案例中,使用 range() 函数生成一个从 1 到 5 的数字序列,默认步长为 1。通过遍历这个序列,并将数字累加到变量 total 中,最后输出总和。

这些案例展示了 MicroPython 中 range(start, stop, step) 函数的实际运用。通过使用 range() 函数,可以生成指定范围和步长的数字序列,可以用于循环、计数和迭代等场景。请注意,range() 函数生成的序列是左闭右开区间,即包含起始值但不包含终止值。

在这里插入图片描述

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

驴友花雕

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

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

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

打赏作者

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

抵扣说明:

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

余额充值