'usr / bin / python' e 'python' executam versões diferentes

0

No meu OS X, digitar / usr / bin / python no terminal executa o Python 2.6.1, mas digitar python executa o Python 2.7.2. Eu gostaria que o primeiro rodasse o 2.7.2 também - como faço isso?

    
por CCC 25.05.2012 / 22:26

2 respostas

7

A versão em / usr / bin / python é a versão instalada como parte do OS X. Digite 'which python' para descobrir onde sua versão mais recente do Python está localizada. Você provavelmente instalou uma versão mais recente via MacPorts ou algo parecido.

Pode ser perigoso alterar para onde o / usr / bin / python aponta caso seja necessário para outros aplicativos. Você pode alterar seus scripts python para que eles encontrem a versão do usuário do python, alterando a primeira linha de:

#!/usr/bin/python

para:

#!/bin/env python

Se você realmente quer substituir / usr / bin / python, você pode fazer assim:

sudo mv /usr/bin/python /usr/bin/python.dist
sudo ln -s 'which python' /usr/bin/python

No entanto, como eu disse, isso pode ser perigoso. Se você precisar reverter essa alteração mais tarde, poderá executar:

sudo rm /usr/bin/python
sudo mv /usr/bin/python.dist /usr/bin/python

Por favor, execute estes com cuidado embora. Se você remover acidentalmente a versão do Python do sistema instalado no OS X, haverá alguma dor para recuperá-lo.

    
por 25.05.2012 / 22:31
0

Parece que o /usr/bin/python é o arquivo fornecido pela Apple. Como outros mencionaram, não toque nele.

O próprio arquivo parece estar apontando para (referência 1):

/Library/Frameworks/Python.framework/Versions

Nesta pasta, você poderá encontrar as últimas versões 2.x ou 3.x instaladas com a pasta de links simbólicos denominada Current /, onde Current / apontará para a última versão instalada.

Note que toda a versão do Python que você já instalou é colocada em (Referência 2):

/System/Library/Frameworks/Python.framework/Versions

No meu caso eu tive que remover a pasta 2.5 da 'Referência 1' e fazer o upload de 2.7 da 'Referência 2'. Então eu removi o link 'Atual' e criei um novo apontando para a pasta 2.7 / (ln -s 2.7 / Current). [Não tenho certeza, o mesmo pode ser necessário para a outra pasta]

Agora, ao digitar python --version , você deve ver a versão do python apontando para o Current / link mais recente que você criou, no meu caso, era a versão 2.7.

Espero que isso ajude, funcionou aqui.

    
por 28.10.2014 / 04:37