Dependendo do sistema, python== python2ou python== python3.
Scripts executáveis em Python, começa com:
#!/usr/bin/env python
#!/usr/bin/env python2
#!/usr/bin/env python3...
Para python py3k, ele é fornecido na documentação. Devo / posso usá-lo com o número da versão ; portanto, faço isso:
#!/usr/bin/env python3
Mas eu encontrei um problema com scripts py2k.
Enquanto na documentação py2k está escrito para uso: #! /usr/bin/env python,
em alguns * nix-es python py3k é o padrão, então python == python3. (Por exemplo , pacote python do ArchLinux , aqui arquivos do pacote python ).
Como empacotar (configurar, criar) e / ou preparar scripts python para distribuição para lidar com isso?
Eu pergunto sobre a criação de pacotes de software que podem ser executados facilmente pelos usuários (sem modificar o ambiente)
Posso fazer o mesmo truque para scripts python py2k e scripts python py3k e defini-lo como #!/usr/bin/env python2:? Posso ter certeza de que cada distribuição python py2k contém python2arquivo, então #!/usr/bin/env python2funcionará?
Se sim, por que não é proposto como padrão, por exemplo, na documentação python py2k ?
python2. Gostaria de saber por que não é padrão usá-lo quando há py2k e py3k e o padrão pythonpode ser diferente. E o seu conselho sobre a remoção - não é adequado a este exemplo, porque pergunto sobre a embalagem. Eu gostaria de fazer um pacote que possa ser executado em diferentes configurações / sistemas. Não há como modificar o ambiente. E quanto a verificação - não se aplica a Shebang - até onde eu sei.
#!...python2em seus programas e, se estiver usando Python 3.x, use #!...python3. Não confie no sistema operacional para ter o link certo se você souber que ele funcionará apenas em uma versão específica. Eu trabalho com sistemas que ainda possuem o Python 1.5.2 instalado como /usr/bin/python- ou escrevo código para lidar com versões mais antigas do Python ou uso python2.
python2executável no meu sistema (compressão Debian). pythoné um link simbólico para python2.6, e python3é um link simbólico para python3.1, mas não existe python2.
python2-lo para executá-lo (se instalado) e sempre pode verificar a versãopython -V. se você quiser quepythonseja 2 ou 3, você deverm /usr/bin/pythoncriar um link simbólico que aponte para sua versão desejada do python, por exemploln -s /usr/bin/python2.5 /usr/bin/python.