鱼C论坛

 找回密码
 立即注册
查看: 895|回复: 2

[已解决]time.time()报错异常

[复制链接]
发表于 2022-4-27 17:16:59 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 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'))
        if  self.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啊  
最佳答案
2022-4-27 17:21:23
你是使用 from time import time,sleep 导入的,所以导入的已经是 time 函数了,

直接使用 time() 即可,而且你这个 LedControl 实例化的不对吧,还需要传两个参数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2022-4-27 17:21:23 | 显示全部楼层    本楼为最佳答案   
你是使用 from time import time,sleep 导入的,所以导入的已经是 time 函数了,

直接使用 time() 即可,而且你这个 LedControl 实例化的不对吧,还需要传两个参数
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 1 反对 0

使用道具 举报

 楼主| 发表于 2022-4-27 17:25:32 | 显示全部楼层
isdkz 发表于 2022-4-27 17:21
你是使用 from time import time,sleep 导入的,所以导入的已经是 time 函数了,

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

多谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-18 14:26

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表