มี python ที่เทียบเท่ากับ 'rvm' ของ Ruby's หรือไม่?


145

ถาม:เรามีสิ่งใดที่เทียบเท่ากับ Python กับตัวจัดการเวอร์ชัน Ruby 'rvm'หรือไม่?


( RVMช่วยให้คุณสามารถสลับไปมาอย่างสมบูรณ์ระหว่างรุ่นที่แตกต่างกันของล่ามทับทิมและชุดที่แตกต่างของอัญมณี (โมดูล). ทุกอย่างเกี่ยวกับการดาวน์โหลดสร้างการติดตั้งสวิทช์ของล่าม (-s) และอัญมณีที่ได้รับการดูแลโดยเรียก RVM. มันเป็น ทั้งหมดทำงานภายใต้บัญชีผู้ใช้ปกติของคุณ)

คำตอบ:


94

ใช่มันเป็นvirtualenvพร้อมกับvirtualenvwrapper

UPDATE: คุณอาจติดตั้งทั้งในครั้งเดียวกับBurrito virtualenv

ปรับปรุง : คำตอบที่ถูกต้องในขณะนี้คืออาจpyenv

สำหรับการคำนวณทางวิทยาศาสตร์เครื่องมือที่สอดคล้องกันคืองู


2
ฉันสับสน คุณสามารถติดตั้งงูหลามรุ่นต่าง ๆ ได้ที่ไหน ดูเหมือนว่าจะใช้เวอร์ชั่นของระบบเท่านั้น
docwhat

4
แต่มีวิธีการรวมการติดตั้ง Python ที่เจาะจง (เช่น 2.7) กับไข่บางอย่างในโครงการหนึ่งและมีไข่อื่นในอีกโครงการหนึ่งหรือไม่ RVM จัดการทุกสิ่งนี้อย่างราบรื่นและsudoเป็นเรื่องของอดีต
Kyle Wild

4
Virtualenv อนุญาตให้เล่นปาหี่ระหว่างเวอร์ชันของ Python และระหว่างชุดไข่ที่แตกต่างกัน แต่มันจะไม่จัดการกับการคอมไพล์ + การติดตั้ง Python เอง RVM ทำอย่างนั้นกับ Ruby หากคุณต้องการสร้าง Python เวอร์ชันที่เจาะจงเพราะคุณไม่สามารถติดตั้งแพ็กเกจนั้นได้ไม่ว่าด้วยเหตุผลใดก็ตามคุณต้องการตรวจสอบ pythonbrew แทน (เฉพาะคำตอบอื่น ๆ ด้านล่าง)
jpetazzo

3
ฉันไม่เห็นว่าสิ่งนี้สนับสนุนงูหลามหลายรุ่นอย่างไร
Dogweather

3
RVM ดูแลการแปลภาษาด้วย Ruby นอกจากนี้ยังอนุญาตให้ดาวน์โหลดไฟล์ที่คอมไพล์แล้วได้ถ้ามี
Andrey Mikhaylov - lolmaus

85

Pythonbrew ไม่อยู่ระหว่างการพัฒนาอีกต่อไป ผู้ดูแลเดิมแนะนำให้ใช้ "PyEnv" แทน (ดูด้านล่าง) "

pythonbrew มาแล้ว! http://github.com/utahta/pythonbrew

pyenv: https://github.com/yyuu/pyenv


ที่น่าสนใจอาจจะคุ้มค่าลอง ฉันเห็นว่าการเรียกใช้คำสั่งของมันคล้ายกับrvm...
conny

1
ในฐานะที่เป็นคนที่ค่อนข้างเชี่ยวชาญใน rvm, pythonbrew เป็นเรื่องง่ายที่จะคุ้นเคย ขอบคุณสำหรับทิป!
elmt

1
ขอบคุณมาก. ฉันเชื่อว่านี่เป็นคำตอบที่แท้จริงจากนี้
sayth

ควรเพิ่มให้ดีเพื่อดู pypy และ jython เพิ่มในรายการของ pythons ที่รู้จัก
sayth

ไม่มากของการจราจรอีกต่อไป สิ่งนี้ยังคงคุ้มค่าหรือไม่
Debilski

51

ฉันสร้างpyenvซึ่งเป็นตัวแยกของ Ruby rbenvและแก้ไขสำหรับ Python เช่นเดียวกับ pythonz pyenv รองรับ Stackless, PyPy และ Jython


6

ติดตามคำตอบของ hytdsh (เกือบสองปีต่อมา) ...

pythonzทางแยกของ pythonbrew ที่เพิ่มการรองรับ Stackless, PyPy และ Jython

ถ้าคุณชอบวิธี rvm จัดการล่ามที่แตกต่างกันมันอาจคุ้มค่าที่จะดู pythonz หากคุณทำงานกับ CPython อย่างเคร่งครัดความแตกต่างนั้นมีความสำคัญน้อยกว่า


5

เลือกหากคุณกำลังใช้ Macports python_selectคุณสามารถใช้ ติดตั้งpython_selectด้วย:

$ sudo port install python_select

สมมติว่าไพ ธ อน 2.6 และ 2.5 มีการติดตั้งผึ้งผ่านทาง Macports คุณสามารถสลับ pythons ดังนี้:

$ sudo python_select python25
=> Selecting version "python25" for python
$ python --version
=> 2.5.5
$ sudo python_select python26
=> Selecting version "python26" for python
$ python --version
=> 2.6.6

0

pyenv 1.2.15 สามารถสร้างและติดตั้ง Python ให้คุณได้

อาจเป็นไปไม่ได้ในรุ่นก่อนหน้านี้ แต่เมื่อฉันทดสอบใน 1.2.15 ฉันสังเกตเห็นpyenv installตัวเลือกที่ใช้งานได้:

pyenv install 3.8.0

ดังนั้นฉันรู้สึกว่ามีเหตุผลที่จะเรียกpyenvการเปลี่ยน RVM

ฉันได้ยกตัวอย่างการใช้งานโดยละเอียดที่: apt-get install สำหรับ python เวอร์ชั่นอื่น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.