Como importar o enum

1

Instalei o Python 3.4.1 no meu Mac (OSX 10.9.4) e preciso trabalhar com enums. Eu comecei a escrever um script em um arquivo de texto:

#!/usr/bin/python
from enum import Enum

E a partir do terminal:

chmod 0700 myscript.py
./myscript.py

Mas recebo o seguinte erro:

from enum import Enum
ImportError: No module named enum

Ao mesmo tempo, se eu usar o IDLE, não tenho problema com o comando:

from enum import Enum

Como posso usar enum de um arquivo de script?

EDITAR:

Se eu echo $PYTHONPATH nada for impresso. Enquanto segue é a saída de print(sys.path) :

['/Users/Marco/Desktop/scripts', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python27.zip', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-darwin', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/plat-mac/lib-scriptpackages', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-tk', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-old', '/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/lib-dynload', '/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/PyObjC', '/Library/Python/2.7/site-packages']

Eu posso ver que o primeiro caminho corresponde ao diretório onde myscript.py está localizado, também parece que ele é usado na versão 2.7 do python, mesmo que eu tenha acabado de instalar a última versão (3.4.1).

    
por Nick 12.09.2014 / 10:26

1 resposta

2

Por favor, substitua sua primeira linha:

#!/usr/bin/python

com o seguinte:

#!/usr/bin/env python3

Isso deve funcionar para você.

O primeiro é codificado permanentemente para executar /usr/bin/python , enquanto o segundo executará qualquer python que seja padrão em seu ambiente atual (tente echo $PATH ).

Por favor, consulte também as seguintes respostas:

Qual é a diferença entre esses dois shebangs python < br>

Por que as pessoas escrevem #! / usr / bin / env python na primeira linha de um script Python?

    
por 12.09.2014 / 14:44

Tags