There is a post on this topic already, but it does not have an explicit answer to the fundamental question which I am re-asking here:
How do you make 7zip commands from
You can wrap it as a function using the following:
import subprocess
def sevenzip(filename, zipname, password):
print("Password is: {}".format(password))
system = subprocess.Popen(["7z", "a", zipname, filename, "-p{}".format(password)])
return(system.communicate())
This definitely works as I've tried and tested it. If you want to tweak it i.e. to Extract files then you can use the following:
def extractfiles(zipname):
system = subprocess.Popen(["7z", "e", zipname])
return(system.communicate())
Give this a try and lemme know how you get on.
Bear in mind this is for Linux. In Windows, swap "7z" with "C:\Program Files\7-Zip\7z.exe" (i think that's the right location).