You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Raspberry Pi Pico H板载LED指定次数闪烁报错及解决咨询

错误原因
  • input()获取的用户输入是字符串类型,但range()函数必须接收整数参数。当你把字符串number传入range()时,Python内部会尝试比较整数和字符串,触发类型不兼容错误。
  • 另外你的代码缺少板载LED的初始化逻辑,直接调用led.toggle()后续也会报错。
修复方法
  1. 转换输入类型:用int()把输入的字符串转为整数,同时可以加异常处理避免非数字输入。
  2. 初始化板载LED:Pico H的板载LED接在GPIO25引脚,需要导入machine模块并初始化引脚为输出模式。
修复后的完整代码
import time
from machine import Pin

# 初始化板载LED
led = Pin(25, Pin.OUT)

try:
    # 将用户输入转为整数
    blink_count = int(input('How many times would you like the LED to blink?'))
    # 实现指定次数的闪烁:亮1秒、灭1秒为一次完整闪烁
    for _ in range(blink_count):
        led.on()
        time.sleep(1)
        led.off()
        time.sleep(1)
    print('Done')
except ValueError:
    # 处理用户输入非数字的情况
    print('请输入有效的数字!')
额外说明
  • 原代码的range(0, number)可以简化为range(number),因为range默认从0开始计数。
  • 用try-except捕获ValueError是为了避免用户输入字母、符号时程序直接崩溃,提升代码健壮性。

内容的提问来源于stack exchange,提问作者Kumaran Panchakumar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.16 00:15:43