Ⅰ python 关于try
不会,她会运行finally里面的内容。
这个try和finally就是对错误的处理,如果try中运行出错,则跳出运行finally中的内容
Ⅱ python如何获取串口前面的名称
楼上的方法太复杂,用serial库就可以,亲测可用:
importserial.tools.list_ports
port_list=list(serial.tools.list_ports.comports())
iflen(port_list)==0:
print('找不到串口')
else:
foriinrange(0,len(port_list)):
print(port_list[i])
参考:网页链接
Ⅲ 如何使用python设计语言serial模块调用方法
一、概述
pyserial模块封装了对串口的访问。
二、特性
在支持的平台上有统一的接口。
通过python属性访问串口设置。
支持不同的字节大小、停止位、校验位和流控设置。
可以有或者没有接收超时。
类似文件的API,例如read和write,也支持readline等。
支持二进制传输,没有null消除,没有cr-lf转换。
三、系统要求
python 2.3及以上版本,包括py3k。
Ⅳ python3 中的try... except Exception,e: ...怎么不能用了变成什么了呢
语法错误,应该改成下列语法:
python3 中捕捉异常需要使用try/except语句,具体格式如下:
try:
<语句> #运行别的代码
except <名字>:
<语句> #如果在try部份引发了'name'异常
except <名字>,<数据>:
<语句> #如果引发了'name'异常,获得附加的数据
else:<语句> #如果没有异常发生
编辑如下:
“拓展资料“:
try的工作原理是,当开始一个try语句后,python就在当前程序的上下文中作标记,这样当异常出现时就可以回到这里,try子句先执行,接下来会发生什么依赖于执行时是否出现异常。
如果当try后的语句执行时发生异常,python就跳回到try并执行第一个匹配该异常的except子句,异常处理完毕,控制流就通过整个try语句(除非在处理异常时又引发新的异常)。
如果在try后的语句里发生了异常,却没有匹配的except子句,异常将被递交到上层的try,或者到程序的最上层(这样将结束程序,并打印缺省的出错信息)。
如果在try子句执行时没有发生异常,python将执行else语句后的语句(如果有else的话),然后控制流通过整个try语句。
Ⅳ Python serial
>>> import serial
>>> ser = serial.Serial(0) #开启串口0
>>> ser.write("\xAA") #写十六进制AA
>>> ser.close() #关闭串口
Ⅵ 如何用python写个串口通信的程序
使用 pyserial 就可以处理串口通信,这个包是跨平台的。
http://pyserial.sourceforge.net/
示例程序在这里:
https://pyserial.readthedocs.io/en/latest/examples.html#wxpython-examples
importserial
#创建serial实例
serialport=serial.Serial()
serialport.port='COM1'
serialport.baudrate=9600
serialport.parity='N'
serialport.bytesize=8
serialport.stopbits=1
serialport.timeout=0.6
try:
serialport.open()
serialport.setDTR(True)
serialport.setRTS(True)
exceptException,ex:
printex
#发送数据
serialport.write(raw_data)
#根据项目要求,可以开一个线程扫描接收数据
Ⅶ python3 使用try处理异常
try_num=0
html=None
whileTrue:
try:
html=urlopen(...)
except:
pass
try_num+=1
iftry_num>20orhtml!=None:
break
time.sleep(10)
Ⅷ python中的try的用法
try语句是python里面的控制语句,与except,finally配合使用处理在程序运行中出现的异常情况。
try的工作原理是:当开始一个try语句后,python就在当前程序的上下文中作标记,这样当异常出现时就可以回到这里,try子句先执行,接下来会发生什么依赖于执行时是否出现异常。
假如在读一个文件的时候,希望在无论异常发生与否的情况下都关闭文件,该怎么做呢?这可以使用finally块来完成。注意,在一个try块下,可以同时使用except从句和finally块。如果要同时使用它们的话,需要把一个嵌入另外一个。
(8)pythonserialtry扩展阅读:
python的基础语法
Python的设计目标之一是让代码具备高度的可阅读性。它设计时尽量使用其它语言经常使用的标点符号和英文单字,让代码看起来整洁美观。
python的用法
Python可以以交互模式运行,比如主流操作系统Unix/Linux、Mac、Windows都可以直接在命令模式下直接运行Python交互环境。直接下达操作指令即可实现交互操作。
一个和其他大多数语言(如C)的区别就是,一个模块的界限,完全是由每行的首字符在这一行的位置来决定的(而C语言是用一对花括号{}来明确的定出模块的边界的,与字符的位置毫无关系)。
Ⅸ python 如何防止串口通信失败
Python中串口出现异常通常有:1.打开串口时,串口不存在,2.写串口时,3.读串口时。这几个异常是经常会碰到的(有经验的人就深有体会),一旦异常出现了,整个程序很可能会因此就运行不下去了。避免因为这些异常的出现而导致程序死机的方法是对这些可能存在的异常进行捕捉。举一个例子:
try:
ComDev.read(1)
print "read Com ok!"
except:
print "read Com error!"
上面的代码意思是:对ComDev这个串口对象读取一个字节,如果读成功,就接着执行print "read Com ok!"而不执行except以下的语句,如果读出现异常,就执行print "read Com error"而不执行
print "read Com ok!"
当然系统还会抛出异常信息,只是我这里没有进行接收,个人觉得很多异常不必接收其信息。
Ⅹ Python如何进行多串口通信一个串口控制电机 一个串口采集数据
下载 pyserial包
def OpenCom(self,*args): #设置端口和波特率 selComPort =‘com2’ #波特率 selBaudRate =9600 #奇偶校验 selParity = 'N' try: if(not self.mySerial): self.mySerial = serial.Serial(port=selComPort, baudrate=selBaudRate,bytesize=8,parity=selParity,stopbits=1,timeout=5) else: if(self.mySerial.isOpen()): self.mySerial.close() self.mySerial = serial.Serial(port=selComPort, baudrate=selBaudRate, bytesize=8, parity=selParity, stopbits=1, timeout=5) self.lblInfo['text'] = '打开成功!' except Exception as ex: self.lblInfo['text'] = '打开失败!'
#使用com口发送modbus协议给终端设备。
def btnEmId_Click(self):
barray = bytearray([0x05, 0x03, 0xA#, 0x54, 0x00, 0x08])
vOldEmId = self.txbOldEmId.get()
vNewEmId = self.txbNewEmId.get()
barray[0] = int(vOldEmId)
barray[5] = int(vNewEmId)
#crc校验
strInput = utils.crc16_append(barray)
print(barray)
n = self.mySerial.write(barray)
if(n > 0):
str = self.mySerial.readall()
self.lblInfo['text'] = 'success!'
# for s in str:
# print (hex(s))
else:
self.lblInfo['text'] = 'error!'