Pythonin poistaminen ja asentaminen uudelleen Macissa — Voinko luottaa näihin vanhoihin viitteisiin?

Olen uusi mac-tietokoneessa ja olen ilmeisesti tehnyt jonkinlaisen virheen. Olen oppinut pythonia opetusohjelmien kautta ja Homebrew-, Pip- ja XCode-koodien välillä jotenkin versioni ovat sekoittuneet. Pip3 osoittaa python2: een, joten kaikki python3-kokeiluni epäonnistuvat jne. …

I ”m tutkitaan kuinka poistaa kaikki versiot turvallisesti ja sitten kuvata puhdas asennus (homebrew?), mutta olen hieman hermostunut.

Olen löytänyt erinomaisia linkkejä:

Selvästikin ”ei koske mitään juurihakemistossa /system ja kaikki muu poistetaan. Minua hermostuttaa se, että nämä linkit ovat melko vanhoja. (Kuusi vuotta! +) En ole varma, luotanko heihin todella vai ei.

Onko kukaan ollut täällä viime aikoina? Voinko luottaa yllä linkitettyihin viesteihin? Kuinka puhdistan tämän python-version sotkun? Huomaa: Käytän MacOS Sierraa (10.12.5).

Vastaa

Joten päädyin poistamaan kaikki python-asennukset, ja asentamalla asiat uudelleen Homebrew-palvelun kautta.

  1. which python —> /Library/Frameworks/Python.framework/Versions/2.7/bin/python Poista koko Python.framework hakemisto osoitteesta /Library/Frameworks.
  2. which python3 —> /usr/local/bin/python3 Poista koko python3-hakemisto.
  3. Olin hieman hermostunut symlinkeistä. Nimetin alun perin uudelleen ne, jotka ilmeisesti aiheuttavat minulle ongelmia. Osoittautuu tarpeettomaksi. Käytä :

    $ brew doctor Warning: Broken symlinks were found. Remove them with "brew prune": /usr/local/bin/python-32 /usr/local/bin/python2-32 /usr/local/bin/python2.7-32 /usr/local/bin/python2_DNU /usr/local/bin/python_DNU /usr/local/bin/pythonw-32 /usr/local/bin/pythonw2-32 /usr/local/bin/pythonw2.7-32 

    Joten, brew prune (tai brew cleanup --prune uudemmassa Homebrew-versiot) toimi täydellisesti. Se poisti kaikki yllä olevat linkit.

  4. Asenna python ja python3 uudelleen homebrew-palvelun kautta. Kaikki valmis.

En milloinkaan koskenut /System -kansiossa sijaitsevaa python-asennusta.

Voi ja selkeä. Vastaus alkuperäiseen kysymykseen on

Kyllä, voit luottaa vanhoihin viitteisiin kirjoitetusti! Tämä ohje on edelleen voimassa.

Kommentit

  • @nohillside thx, mutta .. voisit olla kuitasi helposti XXXX: n äskettäisen syötteen täällä, joka vaati muokkaustasi täällä kommenttina. Näyttää siltä, että sinulla on outo attribuutiohäviö. Eivätkö newby ’ saa lähettää kommentteja? Ja nyt en voi ’ nähdä lähetysnimeä tehdäksesi sen itse.
  • Paras tapa saada attribuutio on muokata viestiä tosiasiassa, jos muokkaaminen on tarpeen , mitä kaikki (jopa tuntemattomat) käyttäjät voivat tehdä. Jos käyttäjät haluavat lähettää parannuskommentteja vastauksina, muokkaan niitä yleensä vastaavaan viestiin.
  • Pythonin homebrew-versiot eivät sisällä tukea Xcode-koodille tai työkaluille, kuten viimeinen tarkistamani taltta. Joten tätä ei yleensä suositella.
  • Pelkästään /System/Library/Frameworks/Python.framework/ mainitsemista ei saa koskaan poistaa, linkitä -dokumentit. python.org/3/using/mac.html
  • uudella versiolla on hananpuhdistus

vastaus

Python-versioni oli 3.6, halusin päivittää versioon 3.7 (jos sinulla on samanlaiset vaatimukset). Käytän macOS-versiota 10.12.6, ja yksinkertainen asennuksen poisto ja asentaminen toimi minulle:

brew uninstall --ignore-dependencies python3 

Sitten:

brew install python3 

ja tehty:

python3 Python 3.7.2 (default, Jan 13 2019, 12:51:54) [Clang 9.0.0 (clang-900.0.39.2)] on darwin Type "help", "copyright", "credits" or "license" for more information. 

Kommentit

  • Tämä toimi hyvin minulle. Minun täytyi säätää ipython -polkua muokkaamalla käynnistyskomentosarjaa manuaalisesti – osoittamaan pythonin suodatusversioon

Vastaus

Järjestelmätiedostot on suojattu järjestelmän eheyden suojauksella. Et voi noudattaa näitä ohjeita rm -rf satunnaisiin kansioihin / System -palvelussa poistamatta ensin SIP: tä käytöstä.

Koska tiedostot ovat kuitenkin suojattuja, tiedät tiedostoja ei ole muokattu. Versiotilanne johtuu komentotulkin asetuksista, eikä sitä muuteta muokkaamalla järjestelmätiedostoja muutenkin. Sinun ei pitäisi koskettaa näitä tiedostoja, jotka ovat taatusti olemassa MacOS: ssa.

Homebrew asentaa erikseen kansiossa / usr / local / Cellar. Hallitse Python-asennustasi Homebrew-ohjelmalla ja ohita järjestelmän asennus kokonaan.

Kommentit

  • Oliko KYLLÄ, voiko luottaa näihin kahteen viitteeseen vai EI , eikö ’ luota heihin? Nämä viitteet näyttävät olevan korkealaatuisia, perusteltuja ja selitetty melko hyvin yksityiskohtaisesti.
  • @zipzit Voit voit luottaa niihin, mutta ne voittivat ’ t työ – että ’ s kaksi erillistä asiaa.Sisältö on luotettavaa; kokeile sitä uusimmalla MacOS-versiolla ja se ei ’ t tee mitään haittaa, mutta se voitti myös ’ t syistä tässä vastauksessa. Suosittelen, että SIP: tä ei poisteta käytöstä vain järjestelmän python-asennuksen poistamiseksi (minkä vuoksi ’ ei ole linkitetty ohjeisiin), koska ’ s ei ole ongelmasi todellinen syy, eikä se auttanut ’ ratkaisemaan mitään, mikä saattaa aiheuttaa enemmän ongelmia prosessissa.
  • Vastauksesi ei ole ’ ei ole minulle järkeä. Mikään yllä linkitetyistä laatuvastauksista ei koske mitään kohdassa /system. Ei mitään = Ei yksi, Zero, Zip, Nada. On poistettavia asioita 1) Python 3.3 -kansiossa Applications-kansiossa. 2) /Library/Frameworks/Python.framework 3) ~ 20 symlinkkiä hakemistossa / usr / local / bin. 4) viitteet shell-polussa (jos sellaisia on). En usko, että ’ ei usko, että mikään näistä osuu suojauksiin, joista puhut. Mitä puuttuu?
  • @zipzit Melko kauan sitten Python siirrettiin kansiosta / Library / System / Library, joten kosketat / System yrittäessäsi poistaa järjestelmän asennuksen. Python-järjestelmäkehys on kansiossa /System/Library/Frameworks/Python.framework, ei / Library.
  • $which python /Library/Frameworks/Python.framework/Versions/2.7/bin/python $ which python3 /usr/local/bin/python3 plus python 2.3, 2.4, 2.5, 2.7 ja virta, joka sijaitsee osoitteessa System/Library/Frameworks/Python.framework/Versions/...

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *