lixiaofeimvp 发表于 2022-4-27 17:16:59

time.time()报错异常

本帖最后由 lixiaofeimvp 于 2022-4-27 17:19 编辑

from concurrent.futures import thread
from operator import truediv
from optparse import Values
import turtle

from cv2 import TERM_CRITERIA_MAX_ITER
import serial
from time import time,sleep
from threading import Thread

class LedControl:
    def __init__(self,Com,Baudr):
      self.Com=str(Com)
      self.Bauds=int(Baudr)
      self.ser=serial.Serial()         
      self.readbufstr=''
    def setLightness(self,ch,lihtness):
      strs='$3'+str(ch)+'%03X'%int(lihtness)
      Valuesx=strs+self.getXorResult(strs)
      
      return self.send(Valuesx)

    def getXorResult(self,string):
      x=0
      for i in string:
            x=x^ ord(i)
            
      return '%02X'%x

    def port_Open(self):      

      self.ser.port=self.Com
      self.ser.baudrate=self.Bauds
      self.ser.bytesize=8
      self.ser.stopbits=1
      self.ser.parity="N"
      
      
      if not(self.ser.isOpen()):
            try:
                self.ser.open()
            except IOError:
                print ("Error: 串口已占用")
            if (self.ser.isOpen()):
               
                return 1
            else:
                return 0
      else:
            return 1
   
    def port_Close(self):
      self.isOpen =self.ser.isOpen()
      if (self.ser.isOpen()):
            self.ser.close()
      if(self.ser.isOpen()):
            print("串口关闭失败!")
      else:
            print("串口关闭成功!")
      
    def send(self,send_data):
      if (self.ser.isOpen()):
            self.readbuffThread=Thread(target=self.readbufThreadFuc)         
            self.readbuffThread.start()
            self.ser.write(send_data.encode('utf-8'))
            
            print("发送成功",send_data)
            return (("发送成功"+send_data))
      else:
            print("发送失败",send_data)
            return (("发送失败"+send_data))   

    def readbufThreadFuc(self):
           time_start=time.time()
      while True:
            time_end=time.time()
            time_Count=time_end-time_start
            print(time_Count)
            if time_Count>0.1:
                break
            if not(self.ser.isOpen()) :
                break   
            data=self.ser.read_all()
            if(data==''):
                continue
            sleep(0.001)
            return str(data.decode('utf-16'))
      ifself.readbuffThread.is_alive():
            self.readbuffThread.join();   
            
               
    def set_Sre_Parameter(self,Com,Baudr):
      self.Com=str(Com)
      self.Bauds=int(Baudr)
      
    def ser_IsOpen(self):

      return self.ser.isOpen()
      
if __name__ == "__main__":
    ld=LedControl()
    x1=ld.setLightness('1','100')
    print(x1)


主程序调用的时候,显示
发生异常: AttributeError
'builtin_function_or_method' object has no attribute 'time'
File "C:\Users\Administrator\Desktop\Python\.vscode\ui\LedControl.py", line 75, in readbufThreadFuc
    time_start=time.time()


可是我已经import 了time啊{:5_102:} {:5_104:}

isdkz 发表于 2022-4-27 17:21:23

你是使用 from time import time,sleep 导入的,所以导入的已经是 time 函数了,

直接使用 time() 即可,而且你这个 LedControl 实例化的不对吧,还需要传两个参数

lixiaofeimvp 发表于 2022-4-27 17:25:32

isdkz 发表于 2022-4-27 17:21
你是使用 from time import time,sleep 导入的,所以导入的已经是 time 函数了,

直接使用 time() 即可 ...

多谢 {:5_99:}
页: [1]
查看完整版本: time.time()报错异常