#-*- coding:utf-8 -*-import os.path as pathimport sysimport zipfileimport getoptdef help(): print """Utilização: python zip.py arq arq2...Argumentos: -h: mostra a ajuda""" sys.exit(0)def main(argv): "método que executa as funcionalidades do script" # -h -> não exige argumento opts, args = getopt.gnu_getopt(argv, "h") # garante que o arquivo de entrada é informado if len(args)==0: print "Informe pelo menos um arquivo de entrada." sys.exit(0) # interpretando os parâmetros passados for opt, value in opts: if opt=="-h": help() for filename in args: if not path.isfile(filename): print "'%s' não é um arquivo. Ignorado." % filename continue # um arquivo zipado não precisa ser zipado novamente if filename.endswith('.zip' ): print "Nada a fazer com '%s'. Ignorado." % filename continue target = path.splitext(filename)[0]+".zip" # criando o arquivo zip fzip = zipfile.ZipFile(target, 'w', zipfile.ZIP_DEFLATED) fzip.write(filename) fzip.close() print "'%s' criado." % targetif __name__=="__main__": # o primeiro argumento de argv e o nome do script sendo # executado. Informação da qual não precisamos main(sys.argv[1:])