问题
How can I make a computer sleep with a python script?
It has to be sleep, not hibernate or anything else.
I have tried to use cmd
but there is no command to sleep or I didn't find one.
回答1:
You can use
import os
os.system("rundll32.exe powrprof.dll,SetSuspendState 0,1,0")
If this command doesn't work for you (it actually puts your comp. in hibernation mode) you will need to turn hibernation off:
Powercfg -H OFF
To turn hibernation mode back on:
Powercfg -H ON
Alternatively, you can also use:
Rundll32.exe Powrprof.dll,SetSuspendState Sleep
If you don't want to turn hibernation off just to run a command, you can use psshutdown as an alternative
C:\Windows\System32\psshutdown.exe -d -t 0
As for what os.system
does, straight from the documentation:
Execute the command (a string) in a subshell.
An additional note:
You will need to have administrator permissions to run Powercfg -H *
回答2:
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
should work. Note 0,1,0 - that set is for sleep. Without - hibernation.
回答3:
set hdd close wait time = 0 in power options
来源:https://stackoverflow.com/questions/37009777/how-to-make-a-windows-10-computer-go-to-sleep-with-a-python-script