Ubuntu 16.04 LTS를 사용하고 있습니다. 나는 한 python3
설치. 이 설치에는 두 가지 버전이있다, python 3.4.3
하고 python 3.6
. python3
명령을 사용할 때마다 python 3.4.3
기본적으로 걸립니다 . python 3.6
와 함께 사용하고 싶습니다 python3
.
python3 --version
쇼 version 3.4.3
ansible
어떤 지원을 설치 하고 version > 3.5
있습니다. 따라서 터미널에 입력 할 때마다 오류로 인해 오류가 발생합니다.python 3.4
답변
의견에서 :
sudo update-alternatives --config python
오류가 표시됩니다.
update-alternatives: error: no alternatives for python3
를 업데이트해야합니다 update-alternatives
. 그러면 기본 파이썬 버전을 설정할 수 있습니다.
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.4 1
sudo update-alternatives --install /usr/bin/python python /usr/bin/python3.6 2
그런 다음 다음을 실행하십시오.
sudo update-alternatives --config python
python3.6을 기본값으로 설정하십시오.
또는 다음 명령을 사용하여 python3.6을 기본값으로 설정하십시오.
sudo update-alternatives --set python /usr/bin/python3.6
답변
아래의 간단한 단계를 적용하여이 작업을 수행 할 수 있습니다.
- 터미널에서 파이썬 버전 확인-
python --version
- 루트 사용자 권한을 얻습니다. 터미널 유형에서-
sudo su
- 루트 사용자 비밀번호를 기록하십시오
- 이 명령을 실행하여 Python 3.6으로 전환하십시오-
update-alternatives --install /usr/bin/python python /usr/bin/python3 1
- 파이썬 버전 확인-
python --version
- 끝난.
답변
/ usr / bin / python3에 대한 심볼릭 링크를 만듭니다. 내 LinuxMint에서 :
# ls -lh /usr/bin/python3 /usr/bin/python
lrwxrwxrwx 1 root root 9 ноя 24 2017 /usr/bin/python -> python2.7
lrwxrwxrwx 1 root root 9 сен 6 2017 /usr/bin/python3 -> python3.5
# mv /usr/bin/python
# cp /usr/bin/python3 /usr/bin/python
# python --version
Python 3.5.2
답변
이 명령을 사용하면 도움이 될 수 있습니다.
- 파이썬 버전을 확인하십시오.
ls /usr/bin/python*
- 별명:
alias python='/usr/bin/pythonxx'
- 재 로그인:
. ~/.bashrc
- 파이썬 버전을 다시 확인하십시오.
python --version
답변
쉬운 대답은 python3.6의 별칭을 추가하는 것입니다.
~ / .bashrc : 파일에이 행을 추가 alias python3="python3.6"
한 다음 터미널을 닫고 새 행을여십시오. 이제 입력 python3 xxx
하면로 번역됩니다 python3.6 xxx
.
이 솔루션은 시스템을 너무 많이 조정할 필요없이 문제를 해결합니다.
편집하다 :
으로 미카엘 케아는 지적이 시스템에 ansible의 잘못이다.
세트
ansible_python_interpreter
는 / usr / 빈 / python3에 구성 옵션을 선택합니다. ansible_python_interpreter 구성 옵션은 일반적으로 호스트 당 호스트 또는 호스트 그룹과 연관된 인벤토리 변수로 설정됩니다.# Example inventory that makes an alias for localhost that uses python3 [py3-hosts] localhost-py3 ansible_host=localhost ansible_connection=local [py3-hosts:vars] ansible_python_interpreter=/usr/bin/python3
구성 파일에 대한 여기에서 볼 수 있듯이 :
다음 순서로 처리되는 구성 파일에서 변경하고 사용할 수 있습니다.
* ANSIBLE_CONFIG (an environment variable) * ansible.cfg (in the current directory) * .ansible.cfg (in the home directory) * /etc/ansible/ansible.cfg
답변
시스템에 여러 버전의 파이썬이있는 경우. 내부의 파이썬 심볼릭 링크를 업데이트하면됩니다./usr/bin/
root@irshad:/usr/bin# ls -lrth python*
lrwxrwxrwx 1 root root 9 Apr 16 2018 python -> python2.7
-rwxr-xr-x 1 root root 3.6M Nov 12 2018 python2.7
-rwxr-xr-x 2 root root 4.4M May 7 14:58 python3.6
위의 예에서 출력이 표시되면 python2.7python --version
을 얻습니다.
이제 아래 명령을 사용하여 파이썬 심볼릭 링크를 업데이트하십시오.
root@irshad:/usr/bin# unlink python
root@irshad:/usr/bin# ln -s /usr/bin/python3.6 python
root@irshad:/usr/bin# python --version
Python 3.6.8
답변
업데이트 대안은 시스템 심볼릭 링크를 사용자 정의 / 관리자 정의 심볼릭 링크로 변경하는 것입니다. 시스템에 여러 버전의 python3이 설치되어 있고 python3이 호출 될 때 호출 할 python3 버전을 제어하려는 경우. 다음을 수행하십시오
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.4 1
sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.5 2
나중에 우선 순위를 변경하려면 아래 명령을 실행하십시오.
update-alternatives --config python3
설명:-
sudo update-alternatives --install <symlink_origin> <name_of_config> <symlink_destination> <priority>
name_of_config를 python4로 변경해도 python4와 함께 update-alternatives –config를 호출하여 재구성해야합니다.
이 방법을 사용하면 시스템 Python 버전과 python3 버전을 개별적으로 제어 할 수 있습니다.