我正在尝试使用 python 获取笔记本电脑的电池电量状态,但在获取实时更新的电池状态值时遇到问题
I am trying to get battery power status of my laptop using python, but facing problem with getting the live updated battery status value
所以我正在尝试获取电池电量状态的实时更新,即笔记本电脑是否已插入电源并正在充电,或者是否 运行正在使用电池电量。
我在 python 中使用 psutil 库来检索所需的数据,但我取回的数据仅限于一次检索,即它在程序 运行.
import psutil
import keyboard
battery = psutil.sensors_battery()
print("Starting Program...")
while True:
status = battery.power_plugged
print(status)
if keyboard.is_pressed("q"):
break
elif(status == True):
print("Charging...")
elif(status == False):
print("Discharging...")
print("Closing Program...")
在这里,无论状态如何变化,我要么只得到“真”和“正在充电...”,要么得到“假”和“正在放电...”。那么我该如何解决这个问题,任何建议都会有所帮助。
您需要在 while
中获取更新状态,如下所示:
import psutil
import keyboard
import time
print("Starting Program...")
while True:
battery = psutil.sensors_battery()
status = battery.power_plugged
print(status)
if keyboard.is_pressed("q"):
break
elif(status == True):
print("Charging...")
elif(status == False):
print("Discharging...")
time.sleep(1)
print("Closing Program...")
所以我正在尝试获取电池电量状态的实时更新,即笔记本电脑是否已插入电源并正在充电,或者是否 运行正在使用电池电量。 我在 python 中使用 psutil 库来检索所需的数据,但我取回的数据仅限于一次检索,即它在程序 运行.
import psutil
import keyboard
battery = psutil.sensors_battery()
print("Starting Program...")
while True:
status = battery.power_plugged
print(status)
if keyboard.is_pressed("q"):
break
elif(status == True):
print("Charging...")
elif(status == False):
print("Discharging...")
print("Closing Program...")
在这里,无论状态如何变化,我要么只得到“真”和“正在充电...”,要么得到“假”和“正在放电...”。那么我该如何解决这个问题,任何建议都会有所帮助。
您需要在 while
中获取更新状态,如下所示:
import psutil
import keyboard
import time
print("Starting Program...")
while True:
battery = psutil.sensors_battery()
status = battery.power_plugged
print(status)
if keyboard.is_pressed("q"):
break
elif(status == True):
print("Charging...")
elif(status == False):
print("Discharging...")
time.sleep(1)
print("Closing Program...")