一日一技:强迫症福音,几行代码提醒我拔掉电源
有些同学对锂电池的概念还停留在十几年前,觉得笔记本电脑充电充满了就必须拔掉电源,否则会损坏电池。
虽然我们已经知道,现代化的笔记本电脑,都有过充保护机制,电源可以一直插在电脑上。但为了满足某些有强迫症的同学,我们来讲讲,如何实现在电脑充满电以后,提醒你拔掉电源。
显然我们不可能一直盯着电脑的电量等着它充满,所以需要想办法在充满电以后自动提醒。这就涉及到两个工作:1. 怎么获取当前电量;2. 怎么提醒我。
第一个问题,我们可以使用Python的一个第三方库,叫做psutil。用这个库获取当前电量,只需要两行代码:
>>> import psutil >>> battery = psutil.sensors_battery() >>> print(battery)
运行效果如下图所示:
其中,percent表示当前电量的百分比,power_plugged=True表示当前是插着电源线的。如果没有插电源,这个值就是False。所以,我们可以编写一个函数,来判断当前是不是插着电源并且电量已经充满:
def is_battery_full(): battery = psutil.sensors_battery() if battery.percent >= 100 and battery.power_plugged: return True return False
写一个while True循环,每分钟检查一次,发现在插着电源的情况下电充满了,就通知我。
那么第二个问题,怎么通知我呢?如果你是macOS电脑,那么非常简单,2行代码就能搞定:
import os os.system(say 电充满了!快拔插头!)
运行效果如下图的视频所示:
如果你是Windows,可以用下面这段代码:
import ctypes ctypes.windll.user32.MessageBoxW(0, "电充满啦!快拔插头!", "警报", 1)
运行效果如下图所示:
当然,充满电就拔电源,这个强迫症不是每个同学都有。但没关系,psutil还可以检查风扇转速(psutil.sensors_fans())、CPU温度(psutil.sensors_temperatures())、显卡温度等等数据。如果夏天打游戏,你可以用来监控CPU温度,发现温度过高就立刻提醒你,避免烧坏电脑。