[資訊] Python 3.4 發佈!+ pyenv

看板Python作者 (亮)時間11年前 (2014/03/18 12:31), 編輯推噓2(200)
留言2則, 2人參與, 最新討論串1/1
Python 3.4.0 Released! https://www.python.org/download/releases/3.4.0/ 相信很多朋友會想要嘗試一下,但又怕會影響到現在自己的開發環境。 PyClab Keith 有介紹用 pyenv 來管理不同版本的 Python,這邊來幫大家幫理一下。 新版有 asyncio, pathlib, enum 相當多功能,趕快來玩玩吧! ######### # Linux # ######### 大同小異,細節我比較沒有碰,歡迎大家補充。 = Ubuntu Dependency = sudo apt-get install -y make build-essential libssl-dev \ zlib1g-dev libbz2-dev wget curl llvm \ libreadline-dev libsqlite3-dev = CentOS Dependency = sudo yum install -y gcc gcc-c++ make git patch openssl-devel \ zlib-devel readline-devel sqlite-devel bzip2-devel = 共通步驟 = git clone git://github.com/yyuu/pyenv.git ~/.pyenv 在 ~/.bash_profile 或對應的 shell 設定檔加入 # For pyenv export PYENV_ROOT=/usr/local/opt/pyenv export PATH="$PYENV_ROOT/bin:$PATH" if command -v pyenv > /dev/null; then eval "$(pyenv init -)"; fi source ~/.bash_profile 安裝 Python 3.4.0 pyenv install -l # 查看能安裝的 Python 版本,連 pypy 也有 pyenv install 3.4.0 使用 3.4.0,可以直接用絕對路徑執行, 或者用 pyenv 的功能,把現在的環境通通改成某一個版本 `pyenv prefix 3.4.0`/bin/python # 直接呼叫 pyenv local 3.4.0 # 在本目錄使用 3.4.0 搭配 virtualenv / pyvenv 使用可能是最方便的 (virtualenv 至少要 1.11+ 可以安裝在任何一個 python 版本, ) virtualenv -p `pyenv prefix 3.4.0`/bin/python venv_34 # Running virtualenv with interpreter ... # Using base prefix '/home/mine/.pyenv/versions/3.4.0' # New python executable in test_venv/bin/python # Installing setuptools, pip...done. source venv_34/bin/activate ####### # Mac # ####### 使用 Homebrew 安裝 pyenv brwe install pyenv --HEAD 一樣在 ~/.bash_profile 中加入 # For pyenv export PYENV_ROOT=/usr/local/opt/pyenv export PATH="$PYENV_ROOT/bin:$PATH" if command -v pyenv > /dev/null; then eval "$(pyenv init -)"; fi 使用 source ~/.bash_profile # 使用上面定義好的設定檔 pyenv install 3.4.0 = 使用 clang, brewed sqlite, openssl = brew install sqlite openssl 針對 Python 3.x export CONFIGURE_OPTS="CC=clang" export CFLAGS="-I/usr/local/opt/openssl/include" export CFLAGES="$CFLAGS -I/usr/local/opt/sqlite/include" export LDFLAGS="-L/usr/local/opt/openssl/lib -L/usr/local/opt/sqlite/lib" 針對 Python 2.x 似乎還是有點問題,大家可以來 debug brew link --force sqlite openssl export CONFIGURE_OPTS="CC=clang" export CFLAGS="-I/usr/local/include" export LDFLAGS="-L/usr/local/lib" 再接下去 pyenv install 安裝。測試有沒有正確連結 `pyenv prefix 3.4.0`/bin/python -c \ "import ssl; print(ssl.OPENSSL_VERSION)" # OpenSSL `pyenv prefix 3.4.0`/bin/python -c \ "import sqlite3 as s; print(s.sqlite_version_info)" # SQLite3 ########### # Windows # ########### "I'm no longer using Windows. I don't like to waste my time with such thing. " - yyuu, pyenv 作者 https://github.com/yyuu/pyenv/issues/62 ... 至少 pyenv 是不能用的,我自己只有用過官方的 installer 搭配 Unoffical Python Package http://www.lfd.uci.edu/~gohlke/pythonlibs/ -- ============================================ = PyCon APAC 2014, May 15-18 @中研院人社館 = ============================================ 歡迎各位參加 PyCon APAC 2014! http://tw.pycon.org/2014apac/zh/ 也歡迎來 PyConTW FB 粉絲頁按個讚! https://www.facebook.com/pycontw 如果你也想為 Python 社群盡一份力量,我們也在徵求志工朋友!歡迎站內信! -- -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.252.208 ※ 編輯: ccwang002 來自: 114.45.252.208 (03/18 20:33)

03/25 10:24, , 1F
可以避開 GIL?
03/25 10:24, 1F

04/16 08:51, , 2F
用魔法才可能在 CPython 裡避開 GIL 吧
04/16 08:51, 2F
文章代碼(AID): #1JA3oaGr (Python)