I am trying to zip a file and not a folder or a directory. 

Here is how I thought of doing it:

```
from shutil import make_archive

make_archive("name_of_zip", "zip", "image.png")

```

*I know I can use* *`ZipFile`* *but I have heard that it is not so reliable.*

But I get an error because I cant zip a file and I can only zip a directory.

```
NotADirectoryError: [Errno 20] Not a directory: 'image.png'

```

Is there a way to do this in Python or would I have to use subprocess and run a like this :

```
$ zip zip_with_image.zip image.png
  adding: requirements.txt (stored 0%)

```