如果我在我的(Linux)命令行上运行这个命令行。
python3 -m serial.tools.list_ports我得到了结果:
/dev/ttyUSB0
1 ports found.这个-m交换机运行哪些文件(或文件序列)?
我的/usr/目录中有不同的python目录,但是没有特定的serial.py文件(我可以看到serialcli.py & serialutil.py、serialize.py等),所以命令被“转换”成某种形式来使用“基于串行”的文件,但是哪一个呢?
它是如何产生输出的?
在python代码中,当我使用此命令时,不会生成任何输出,所以我猜-m切换到输出例程?
这个命令的输出(和其他示例)非常有用,我可能希望在python本身中使用它,而不是使用BASH。
我知道这不是为了这个,而是为了测试,但是.;)
问:那么,在这个“系列”例子中,哪些文件实际上是被“窃听”的?
发布于 2022-07-11 04:47:21
python中的-m标志用于:
-m模块:作为脚本运行库模块(终止选项列表)
“终止选项单”是什么意思?这意味着,将来的任何选项都会传递给您所提供的程序,而不是python。
因此,在您的场景中,它以脚本的形式运行list_ports模块
python3 -m serial.tools.list_ports您如何在python本身中使用它?
import serial模块并在list_ports中调用函数。我非常肯定,您的工作区/环境中有这些文件,因为您已经安装了pyserialpyserial,并运行一些实验。如果您“真的,真的”想要像使用bash命令一样在python脚本中使用它?请看一下subprocess模块。
https://stackoverflow.com/questions/72933775
复制相似问题