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

PySerial属性调用报错,求问文档时效性及基础串口示例

Python串口读取问题解决与基础操作指南

代码错误修正

你的核心问题是串口对象引用错误:你创建的串口实例是s,但后续代码错误使用了未定义的serialPort或模块名serial来调用属性/方法,导致报错。修正后的可运行代码如下:

# test_sport
import serial

# 创建串口实例,指定端口、波特率,添加timeout避免无限阻塞
s = serial.Serial(port='COM9', baudrate=9600, timeout=1)
serial_string = ""

while True:
    # 通过创建好的实例s访问in_waiting属性
    if s.in_waiting > 0:
        # 用实例s调用readline方法读取数据
        serial_string = s.readline()
        # 解码为ASCII字符串并打印,strip()去除多余换行符
        print(serial_string.decode('ascii').strip())

# 程序退出前关闭串口(建议放在try-finally块中保证执行)
# s.close()

关键错误说明

  1. in_waiting属性调用错误:in_waiting是serial.Serial实例的属性,必须通过你创建的串口对象(比如上述代码中的s)访问,不能直接用模块名serial调用。PySerial官方文档的用法是正确的,你只是用错了对象。
  2. 导入语句冗余:无需同时写import serial和from serial import *,仅import serial即可,避免潜在的命名冲突。

文档与示例相关问题

  • PySerial在线文档对应最新版本,若你本地安装的是旧版本,可能存在属性差异,可通过命令pip show pyserial查看本地版本,再匹配对应版本的文档内容。
  • 基础串口操作示例可查看PySerial安装目录下的examples文件夹(路径一般为Python安装目录/site-packages/serial/examples),里面包含了打开串口、读写数据等基础场景的示例代码。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 15:15:46