戳人痛处

导航

统计

[记]一些常用函数(python)

[1]:控制台与时间

复制代码
class InThreadTime(): 
    @staticmethod
    def GetTimeStr():
        '''
        返回日期字符串 如211103_161722
        '''
        return time.strftime("%y年%m月%d日_%H%M%S", time.localtime())
    @staticmethod
    def GetTimefloat():
        '''
        返回当前时间(s)
        '''
        return time.time()
    @staticmethod
    def FloatTimeToStr(time_sum:float):
        return time.strftime("%M-%S",time.localtime(time_sum))
    @staticmethod
    def Sleep(time_s:float,key:list=[False]):
        '''
        key为真退出
        返回True 为失败退出
        
        '''
        for idx in range(0,int(time_s)):
            time.sleep(1)
            if(key[0]):
                return True
            print("[InThreadTime-Sleep]:{}".format(idx))
        time.sleep(time_s-int(time_s))
        return False
    @staticmethod
    def cmd_deal_real_time_show(cmd:str,logprint=print):
        '''
        Log打印回调接口 参数str,命令执行成功返回0,执行失败返回1
        '''
        xe = subprocess.Popen(cmd,stdout=subprocess.PIPE,shell=True)
        while True:
            rt_data = xe.stdout.readline().decode("GBK")
            if rt_data!="":
                if logprint==print:
                    logprint(rt_data,end="")

                else:
                    logprint(rt_data)
            else:
                break
        return xe.wait()#执行成功返回0,执行失败返回1
    @staticmethod
    def cmd_deal_not_real_time_show(cmd:str):
        '''
        返回(0,str)执行成功,返回(1,str)执行失败
        '''
        xe = subprocess.run(cmd,stdout=subprocess.PIPE)
        return (xe.returncode,xe.stdout.decode("gbk"))
    @staticmethod
    def iperf3_json_get_bandwitdh(data:str):
        data_obj = json.loads(data)
        return data_obj["end"]["sum_received"]["bits_per_second"]
复制代码

 

posted on   戳人痛处  阅读(29)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· DeepSeek如何颠覆传统软件测试?测试工程师会被淘汰吗?
点击右上角即可分享
微信分享提示