$ touch foo
$ chmod a+x foo
$ zip archive.zip foo
  adding: foo (stored 0%)
$ zipinfo archive.zip
Archive:  archive.zip
Zip file size: 156 bytes, number of entries: 1
-rwxr-xr-x  3.0 unx        0 bx stor 20-Aug-05 19:11 foo
1 file, 0 bytes uncompressed, 0 bytes compressed:  0.0%
$ rm foo
$ unzip archive.zip 
Archive:  archive.zip
 extracting: foo                     
$ ls -l foo 
-rwxr-xr-x 1 vlorentz vlorentz 0 Aug  5 19:11 foo
$ rm foo
$ python3 -c "import shutil; shutil.unpack_archive('archive.zip')"
$ ls -l foo 
-rw-r--r-- 1 vlorentz vlorentz 0 Aug  5 19:12 foo