Python问题记

1.python定时任务

使用的是threading包内的Timer来进行

from threading import Timer

Timer(interval, function, args=None, kwargs=None)

    • 创建一个 Timer 对象,interval 参数表示定时的时间间隔(以秒为单位),function 参数是要执行的函数,args 和 kwargs 是要传递给函数的参数。

Timer.start()

    • 启动定时器。一旦定时器启动,它将在指定的时间间隔后调用指定的函数。

Timer.cancel()

    • 取消定时器,阻止定时器的执行。如果定时器已经开始并且尚未执行,则调用 cancel() 方法可以取消该定时器,使其不再执行。如果定时器已经执行了,cancel() 方法将不会有任何作用。

Timer.is_alive()

    • 返回一个布尔值,表示定时器线程是否处于活动状态。如果定时器正在执行中,返回 True;否则返回 False。

使用 Timer 对象,你可以创建一个在指定时间后执行特定任务的线程,并且可以控制它的启动和取消。这在需要进行定时执行的场景中非常有用,比如定时执行某个函数、周期性地进行某项操作等。

2.获取当前时间

import datetime
datetime.datetime.now()#当前时间

3.str+int

实际上在python中字符串+其他类型的数据是会报错的那我们就需要使用

str.format()来进行合并 在str中使用{}来代替需要取代的数据在format函数中按顺序来进行传递。

4.linux中python让程序退出

在 Python 中,可以通过以下方式来停止正在运行的任务或程序:

键盘中断(Keyboard Interrupt):

    • 在终端中按下 Ctrl + C 组合键可以触发键盘中断信号,通常用于中断当前程序的执行。这会引发 KeyboardInterrupt 异常,可以捕获这个异常来做清理工作或处理中断信号。

操作系统信号:

    • Python 中的 signal 模块允许你处理操作系统发送的信号。比如 signal.SIGTERM 表示终止信号,可以通过监听这些信号来终止程序的运行。

自定义退出条件:

    • 在编写程序时,可以设置自定义的退出条件,在满足特定条件时终止程序的执行。比如设置一个变量,在某个条件下将这个变量置为 True,然后程序在适当的时候检查这个变量,如果为 True 就退出。

调用 sys.exit()

    • 使用 sys.exit() 函数来退出 Python 解释器。这个函数可以接受一个整数参数,表示退出时的返回状态码。通常情况下,不需要给它传递参数,直接调用 sys.exit() 就可以退出程序。

以上是一些常见的终止 Python 程序执行的方法。选择哪种方法取决于程序的具体情况和需求。

5.linux中python与串口进行交互

安装 pyserial 库: 首先确保你已经安装了 pyserial 库。如果尚未安装,可以使用 pip 命令来安装:

  1. install pyserial

打开串口: 使用 serial.Serial() 函数打开串口连接。在 Linux 中,串口通常表示为 /dev/ttyS* 或 /dev/ttyUSB* 等。

  1.  serial
    # 打开串口
    ser = serial.Serial('/dev/ttyUSB0', baudrate=9600, timeout=1)
  • /dev/ttyUSB0 的串口,设置波特率为 9600,超时时间为 1 秒。

发送和接收数据: 使用 write() 方法发送数据到串口,使用 read() 或 readline() 方法从串口接收数据。

  • 发送数据
    ser.write(b'Hello, serial port!\n')

    接收数据
    received_data = ser.readline()
    print(received_data)

关闭串口: 使用 close() 方法关闭串口连接。

通过上述步骤,你可以在 Linux 中使用 Python 与串口进行基本的通信。根据具体的串口通信需求,你可能需要根据串口的配置(如波特率、数据位、停止位等)进行相应的设置。

6.linux中python与mqtt服务端进行交互

在 Linux 中,你可以使用 Python 与 MQTT(Message Queuing Telemetry Transport)协议进行交互。MQTT 是一种轻量级的消息传输协议,常用于物联网(IoT)设备之间的通信。

要在 Linux 中使用 Python 与 MQTT 进行交互,你可以使用 paho-mqtt 库。以下是在 Linux 中使用 Python 与 MQTT 进行交互的基本步骤:

安装 paho-mqtt 库: 首先确保你已经安装了 paho-mqtt 库。如果尚未安装,可以使用 pip 命令来安装:

  1. install paho-mqtt

连接到 MQTT 代理服务器: 在 Python 中使用 paho.mqtt.client 模块创建一个 MQTT 客户端,并连接到 MQTT 代理服务器。

  1.  paho.mqtt.client as mqtt

    # 创建 MQTT 客户端
    client = mqtt.Client()

    # 连接到 MQTT 代理服务器
    client.connect("broker.example.com", 1883)  # 指定 MQTT 代理服务器的地址和端口号
  • broker.example.com 是 MQTT 代理服务器的地址,1883 是 MQTT 默认的端口号。

订阅主题和发布消息: 使用 subscribe() 方法订阅主题,并使用 publish() 方法发布消息到指定的主题。

  • 订阅主题
    client.subscribe("topic/test")

    发布消息
    client.publish("topic/test", "Hello, MQTT!")

处理消息: 使用 on_message 回调函数处理接收到的消息。

  1. codedef on_message(client, userdata, message):
        print(f"Received message: {message.payload.decode()} on topic {message.topic}")

    # 设置消息回调函数
    client.on_message = on_message

保持连接并处理事件循环: 在循环中保持连接并处理事件。

  1. code# 保持连接
    client.loop_forever()

关闭连接: 当结束时,关闭与 MQTT 代理服务器的连接。

7.误删ubuntu中的python从而导致图形化界面崩溃

首先情况是删除了ubuntu中的python导致图形化界面崩溃只能进入虚拟终端进行修复

1.进入虚拟终端

ctrl+alt+f1~6 都可以进去虚拟终端 7是图形化界面

2.进行修复

sudo apt install dpkg
sudo dpkg --configure -a
sudo  apt install -f
sudo apt-get install ubuntu-minimal ubuntu-standard ubuntu-desktop

8.ubuntu中下载python库的几种方法

在 Ubuntu 中安装 Python 库通常可以使用以下命令:

使用 pip(Python 包管理器)安装:

  1. 3:
  2.  apt update
    sudo apt install python3-pip
  • Python 2 对应的 pip:
  1.  apt update
    sudo apt install python-pip
  • pip 安装特定的 Python 库,例如:
  1.  install package_name
  1.  install package_name

使用 apt(Ubuntu 软件包管理器)安装预编译的 Python 库:

  1. 中的软件包管理器提供了许多常见的 Python 库,您可以使用以下命令来安装:
  2. 3:
  3.  apt update
    sudo apt install python3-<package_name>
  4. 2:
  5.  apt update
    sudo apt install python-<package_name>
  • numpy 库:
  1.  apt update
    sudo apt install python3-numpy
  • python-<package_name> 是针对 Python 2 的包命名,python3-<package_name> 是针对 Python 3 的包命名。

使用源码手动安装:

  • Python 库。通常,您需要从项目的官方网站下载源码,然后按照说明进行安装。一般情况下,步骤为:
  1.  package_source_url
    tar -zxvf package_name.tar.gz
    cd package_name
    python3 setup.py install
  • Python 2:
  1.  package_source_url
    tar -zxvf package_name.tar.gz
    cd package_name
    python setup.py install

请注意,使用 pip 或 apt 安装的 Python 库通常会更简单,并且可以更好地管理依赖关系。手动安装源码的方式更适合一些特殊的情况,或者当您需要最新的、不在软件仓库中的版本时使用。

9.python中的局部变量和全局变量

主要是全局变量与方法的交互

首先全局变量在方法中是可以直接使用的但是如果需要修改则需要在修改命令之前说明是global

#比如说我需要在方法中创建全局变量或者修改全局变量
t = None
def a():
    global a
    a = 123
    global t
    t = 666
#这样我们就在一个方法中定义了一个全局变量a修改了一开始的全局变量t

10.python中的条件判断

if...elif....elif.....else

while

除此之外就没有类似java那种switch之类的

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值