• Python串口小结1


    1、定义类。

    https://blog.csdn.net/knight_zhou/article/details/106586380

    class data(object):    #class定义类

            def get_data(self, buf):    #def定义类中的方法,类中的方法第一个参数是self这个有别于函数

                    self.vol = buf[1]

                    self.vol = (self.vol<<8) | buf[0]

                    ...

                    return self

    2、创建对象。

    class student:
        def __init__(self):
            self.name = 'LiLei'
            self.age =10

    a = student
    b = student()
    c = a()
    print(a)
    print(b)
    print(c)

    类名不加括号相当于给类起了一个别名。类似c语言中的typedef。

    类名加括号相当于创建了一个对象。

    3、数据保存到本地文件中。

    import csv

    data = ['12V','1A','25℃']

    with open('abc.csv','w',newline='') as f:    #打开文件,以覆盖方式进行写
        head = ['电压', '电流', '温度']
        writer = csv.writer(f)
        writer.writerow(head)

    with open('abc.csv','a',newline='') as f:    #打开文件,以追加方式进行写
        writer = csv.writer(f)
        writer.writerow(data)

    4、使用tkinter创建GUI。

    import tkinter as tk    #导入模块,并把模块改名
    import datetime
    import time
    import threading

    window = tk.Tk()    #创建Tk对象
    window.title('串口助手')    #标题
    window.geometry('1200x600')    #几何形状
    window.resizable(0,1)    #0表示宽度不能调整,1表示高度能调整

    textvar1 = tk.StringVar()
    date1 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    textvar1 = date1
    label1 = tk.Label(window, text=textvar1)
    label1.place(x=100, y=200)

    def fun_1s():
        while True:    #获取时间并显示在窗口的标签上
            date1 = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
            print(date1)
            textvar1 = date1
            label1 = tk.Label(window, text=textvar1)
            label1.place(x=100, y=200)
            time.sleep(1)
    def thread1():
        th = threading.Thread(target=fun_1s)    #创建一个线程,这个线程会调用fun_1s()函数
        th.daemon = True
        th.start()

    thread1()
    window.mainloop()    #窗口循环

  • 相关阅读:
    Word处理控件Aspose.Words功能演示:在 Python 中比较两个 Word 文档
    聊聊Go里面的闭包
    2023年CNVD漏洞周报16期
    dubbo环境搭建ZooKeeper注册中心
    JS 常见的 6 种继承方式
    51单片机直流电机PID速度控制正反转控制(红外光电测速)LCD1602 L298N
    EthernetIP IO从站设备数据 转opc ua项目案例
    英语词汇篇 - 构词法
    电脑重装系统蓝屏是什么原因
    MySql中分割字符串
  • 原文地址:https://blog.csdn.net/weixin_43006196/article/details/128045963