• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

python interpreter virtualenv

Object Storage Arubacloud
+1 głos
233 wizyt
pytanie zadane 26 lutego 2019 w Python przez gunaterek Bywalec (2,760 p.)
Witam, mam problem ze zrozumieniem środowiska python. Mianowicie dlaczego w systemie linux są dwie wersje pythona 2.7 i 3.x ? Pogubiłem się na poziomie tworzenia wirtualnego środowiska. I teraz tak pip odpowiada za pakiety 2.7 ale czy jeśli na default ustawie na python 3.6 to pip będzie już instalował pakiety do 3.x czy 2.7 ? Bo jak na razie bo musiałem zaistalować pip3 żeby były pakiety 3.x i teraz nie rozumiem tej różnicy czy nie można używać tylko pythona 3.x ? Jeszcze pytanie dotyczące wirtualnego środowiska bo virtualenv tworzy 2.7 ale jeśli zainstaluje go przez pip3 to nie działa. Wyczytałem że do tego jest już wbudowane środowisko venv w < python 3.x ale nie rozumiem czy to się różni oprócz tego ze faktycznie tworzy pythona 3.x. Prosiłbym o poprawienie gdzie się mylę w zrozumieniu tematu i przepraszam za chaos. Cieżko mi wyjaśnić czegoś czego nie rozumiem.

1 odpowiedź

+1 głos
odpowiedź 26 lutego 2019 przez adrian17 Ekspert (344,860 p.)
wybrane 26 lutego 2019 przez gunaterek
 
Najlepsza

Tak z głowy...

Mianowicie dlaczego w systemie linux są dwie wersje pythona 2.7 i 3.x ?

Bo 2 i 3 są niekompatybilne na kilka ważnych sposobów. Wiele skryptów nie zostało od razu zaktualizowanych by działać na 3, więc przez jakiś czas systemy wspierają obie wersje.

czy jeśli na default ustawie na python 3.6

Słabo wiem, co masz na myśli przez "ustawić default".

Co do tworzenia środowisk:

virtualenv nazwa
python3 -m venv nazwa

robią w zasadzie to samo, z dokładnością do wersji Pythona przypisanej do środowiska. Natomiast możesz jeszcze ręcznie wymusić konkretną wersję:

virtualenv --python=/usr/bin/python3 nazwa

W wirtualnym środowisku, `python` i `pip` wskazują na wersję Pythona przypisaną do środowiska. Więc w środku virtualenva nie musisz pamiętać czy używać `pip` czy `pip3`.

1
komentarz 26 lutego 2019 przez gunaterek Bywalec (2,760 p.)

Słabo wiem, co masz na myśli przez "ustawić default".

spotkałem się z kodem

alias python='/usr/bin/python3.6'

i teraz po sprawdzeniu 

python --version

jest nie 2.7 tylko 3.x

i nie wiem czy dobrze rozumiem teraz pip i pip3 to to samo ?

1
komentarz 26 lutego 2019 przez adrian17 Ekspert (344,860 p.)
To tylko alias bashowy zmieniający, gdzie prowadzi komenda `python`. To nie jest ustawienie "domyślnej wersji Pythona".

Podobne pytania

0 głosów
0 odpowiedzi 364 wizyt
pytanie zadane 2 kwietnia 2020 w Python przez bbbbbbbb Użytkownik (950 p.)
0 głosów
1 odpowiedź 1,168 wizyt
0 głosów
0 odpowiedzi 123 wizyt
pytanie zadane 26 lipca 2023 w Offtop przez reaktywny Nałogowiec (40,990 p.)

92,563 zapytań

141,416 odpowiedzi

319,596 komentarzy

61,948 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...