當前位置:首頁 » 編程語言 » centos7python26

centos7python26

發布時間: 2022-02-24 06:03:07

① centos 7 python版本為什麼還是內置 2.7

python2.7,也就是2版,依然是一種長期支持的穩定版,是傳統python; 而python3.X版本是一個研究型的開發版,當它足夠穩定的時候,python將全面遷移到 python4版。 這是一種滾動式版本升級,工程應用使用python2.X,可以保證工程應用可以長期得...

② centos7 下安裝python3後發現自帶的2.75沒有覆蓋,怎麼使用新版本

如果不想引入更多的東西,我認為折中的方法有兩個:

interactive模式打開的時候用python3
在你寫的腳本的shabang部分寫
#!/usr/bin/env python3
#或者
#!/usr/bin/python3

解釋一下
1. 在你的$PATH里,是有python/python2[.7]/python3[.4]類似的這幾個可執行文件的,而python這個通常會是一個軟鏈接,而默認這個軟鏈接是指向python2.7的,所以當你在命令行直接輸入python的時候會調用2.7。
2. 執行執行你的腳本的Python版本,這個只會在你
chmod +x your_script.py

之後再
./your_script.py

的時候才有用,正常你只需要

python3 your_script.py

就可以了

③ 在centos 7上安裝並配置python 3.6環境,怎樣使用3.6.1 版本

在CentOS 7上安裝並配置Python 3.6環境
在純凈的 CentOS 系統上安裝 Python 環境主要有兩種辦法。 一種是通過源碼編譯安裝,另外一種就是安裝已經打好的 RPM 包。依照個人習慣,我們先來看一下如何通過源碼編譯的方式安裝 Python 3.6 並且配置虛擬環境。
作者:TaoBeier來源:segmentfault|2017-06-26 18:30
移動端
收藏
分享

拖了很久沒有更新,抱歉啦~ 今天受邀寫篇如何在 CentOS 7 上配置 Python 3 環境的文章。往常我都選擇直接把我早年寫的一篇文章源碼編譯MongoDB丟過去,讓他們看其中的源碼編譯 Python 那一節,不過那節寫的其實不太詳細,而且最近被很多人催,所以還是單獨寫一篇好了。
當前最新的 CentOS 7.3 默認安裝的是 Python 2 ,並且默認的官方 yum 源中不提供 Python 3 的安裝包。有些用戶想要升級使用 Python 3 但實際可能有各種各樣的問題,導致出錯,反觀一下激進的 Fedora 社區,在23的時候,就將默認的版本修改成了 Python3 (如果我沒記錯的話)。
先說下我所使用的系統環境, 一個新創建的 Docker 容器。 使用 cat /etc/redhat-release 可以看到運行的是 CentOS 7.3 版本。

在純凈的 CentOS 系統上安裝 Python 環境主要有兩種辦法。 一種是通過源碼編譯安裝,另外一種就是安裝已經打好的 RPM 包。依照個人習慣,我們先來看一下如何通過源碼編譯的方式安裝 Python 3.6 並且配置虛擬環境。
使用源碼進行編譯安裝
基礎環境
先安裝安裝幾個必須的包,以方便後續的操作
➜ yum install wget gcc make ➜ # wget 用於下載源碼包 ➜ # gcc 和 make 用於編譯

上 Python的官網 下載源碼包
➜ wget

解包,解壓縮
➜ xz -d Python-3.6.1.tar.xz ➜ tar -xvf Python-3.6.1.tar

編譯
➜ cd Python-3.6.1 ➜ ./configure --prefix=/usr/local/python3.6 --enable-optimizations ➜

先解釋下上面的參數,--prefix 是預期安裝目錄,--enable-optimizations 是優化選項(LTO,PGO 等)加上這個 flag 編譯後,性能有 10% 左右的優化(如果沒記錯的話),但是這會明顯的增加編譯時間。不過關於 LTO 和 PGO 其實不在今天文章的討論范圍內,建議感興趣的可以看看 GCC 中 LTO 的具體實現。我應該不太可能去寫相關的文章 哈哈哈 畢竟寫起來就會停不下來。
接下來
➜ make ➜ make install

如圖,會看到出錯了,提示 zlib not available 所以,我們需要裝一下依賴
➜ yum install zlib-devel

那為什麼需要這個依賴包呢, 其實是因為 Python 有個很重要的內建模塊 zipimport 用於從 Zip 壓縮包中導入模塊。 而如果沒有 zlib 的包,那麼就無法進行解壓縮了,也自然該模塊就不能使用了。
當我們的依賴安裝好之後,重新執行上面的編譯安裝的步驟,發現執行成功。
➜ /usr/local/python3.6/bin/python3 --version Python 3.6.1

此刻,我們的 Python 3 也就安裝成功了。
檢查
編譯安裝完還遠遠不夠,我們來做些檢查。
當我們運行 Python 終端,輸入 import bz2 的時候,會發現沒有這個模塊。如果你對這個模塊不熟悉,那也沒關系。我們輸入 import sqlite3熟悉 Python 的同學應該對 sqlite3 不會太陌生,但如果你還是不熟悉的話,那你按方向鍵試試看。有沒有發現,輸出變成了^[[D^[[A 類似這樣的內容?

熟悉 Python 源碼的同學,肯定知道我要說什麼了。但是假如你不熟悉,沒關系,我來告訴你。正常來講,在終端下我們預期當輸入上方向鍵,會顯示上一條命令,輸入左方向鍵,可以將游標移動到左側。但現實和我們的預期不同,什麼原因?
這里涉及到了一點點關於輸入設備的歷史原因,簡單來說就是需要有個模塊來對用戶的輸入進行轉義。回到本文的重點,就是我們編譯安裝的時候缺少了 readline 這個模塊。既然已經發現了問題,那解決的辦法其實很簡單
➜ yum install readline-devel

安裝完成後,重復上面的步驟,編譯&&安裝即可。
再檢查
前面只是解決了方向鍵輸入的問題,但是我提到的那兩個模塊還是 import 不進來,那我們仔細的看看我們的編譯過程的輸出。其中有這樣的一段(依據系統環境的不同,輸出可能也是不一致的)
Python build finished successfully! The necessary bits to build these optional moles were not found: _curses bz2 _dbm _gdbm _lzma _sqlite3 _tkinter readline To find the necessary bits, look in setup.py in detect_moles() for the mole's name.

按照上面的提示,很明顯,我們缺少了一些(可選的)模塊,這些模塊假如你覺得自己不會用到,那也可以不理會它。這些模塊,我用到的會多一些,甚至是那個一般人都不會碰的 TK 模塊 哈哈哈。解決方式就只是裝一下對應的模塊即可。
➜ # 解決 import bz2 報錯 ➜ yum install bzip2-devel ➜ # 解決 import curses 報錯 ➜ yum install ncurses-devel ➜ # 解決 import sqlite3 報錯 ➜ yum install sqlite-devel ➜ # 解決 _dbm _gdbm 缺失提醒 ➜ yum install gdbm-devel ➜ # 解決 _lzma 缺失提醒 ➜ yum install xz-devel ➜ # 解決 _tkinter 缺失提醒 ➜ yum install tk-devel ➜ # 解決 readline 缺失提醒及方向鍵行為非預期的問題 ➜ yum install readline-devel

當這些模塊都裝完,重新編譯會發現提醒已經消失,安裝即可。

使用 rpm 包進行安裝
先來介紹一下 IUS 這個社區,名字的全寫是【Inline with Upstream Stable】取首字母,它主要是一個提供新版本RPM包的社區。具體使用可以查看官方文檔 簡單說來就只要按下面的命令操作即可。
➜ yum -y install

添加 IUS 之後,先創建緩存元數據,再進行安裝即可
➜ yum makecache ➜ yum install python36u ➜ yum -y install python36u-pip ➜ yum -y install python36u-devel

完成後直接終端輸入 python3 即可。
環境配置
上面只是寫了 Python 的安裝,如果是使用 RPM 的方式安裝的話,那直接是可用的。但如果是源碼編譯的,總不至於每次都輸入一大串路徑吧。所以解決方法很簡單,加個鏈接即可。
➜ ln -s /usr/local/python3.6/bin/python3 /usr/bin/python3

另外,當系統中存在多個 Python 版本的時候,盡量去避免環境污染。我個人比較推薦使用 virtualenv 創建獨立的虛擬環境,我日常中也是這樣用的。不過,當我們安裝完 Python 3.6 後,可以直接執行下面的命令進行虛擬環境的創建。
➜ python3 -m venv py3 ➜ source py3/bin/activate (py3) ➜ python -V Python 3.6.1

總結
CentOS 7 上安裝Python 3.6 主要有兩種方式,源碼編譯和安裝 RPM 包。
對於想快速使用源碼配置環境但並不想關心具體原因的讀者,可以直接使用我GitHub上提供的這個腳本進行安裝
另外Python 3.6 可直接使用 python3 -m venv venv_name 創建虛擬環境。

④ Centos7.6下多版本python的默認設置

在你的腳本開頭位置加上
#!/usr/bin/python3
這樣每次運行腳本的時候,就會自動根據這個路徑去尋找對應版本python程序,你可以在機器上先測試一下,覺得好用可以採納我的回答。

⑤ centos7怎麼裝python3.6

安裝python3.6可能使用的依賴
# yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel

下載python3.6編譯安裝
到python官網下載
下載最新版源碼,使用make altinstall,如果使用make install,在系統中將會有兩個不同版本的Python在/usr/bin/目錄中。這將會導致很多問題,而且不好處理。
# wgethttps://www.python.org/ftp/python/3.6.0/Python-3.6.0.tgz
# tar -xzvf Python-3.6.0.tgz -C /tmp
# cd /tmp/Python-3.6.0/
把Python3.6安裝到 /usr/local 目錄
# ./configure --prefix=/usr/local
# make
# make altinstall

python3.6程序的執行文件:/usr/local/bin/python3.6
python3.6應用程序目錄:/usr/local/lib/python3.6
pip3的執行文件:/usr/local/bin/pip3.6
pyenv3的執行文件:/usr/local/bin/pyenv-3.6
更改/usr/bin/python鏈接
# cd/usr/bin
# mv python python.backup
# ln -s /usr/local/bin/python3.6 /usr/bin/python
# ln -s /usr/local/bin/python3.6 /usr/bin/python3

更改yum腳本的python依賴
# cd /usr/bin
# ls yum*
yum yum-config-manager yum-debug-restore yum-groups-manager
yum-builddep yum-debug-mp yumdownloader
更改以上文件頭為
#!/usr/bin/python 改為 #!/usr/bin/python2
修改gnome-tweak-tool配置文件
# vi /usr/bin/gnome-tweak-tool
#!/usr/bin/python 改為 #!/usr/bin/python2

修改urlgrabber配置文件
# vi /usr/libexec/urlgrabber-ext-down
#!/usr/bin/python 改為 #!/usr/bin/python2

⑥ centos7下Python調用mysql

python要調用mysql首先要安裝python 的mysql模塊,centos下可以通過以下方法來安裝:

  1. 直接yum安裝

    yum install MySQL-python -y

  2. 通過pip安裝

    pip install mysql-python

查看是否安裝成功,運行python,在python終端裡面運行

import MySQLdb

如果沒有報錯說明安裝成功,然後就可以連接你的數據了

  1. 創建一個資料庫的連接

connect = MySQLdb.connect(host='127.0.0.1',user='user',passwd='password',db='db')

2.獲取資料庫的游標

cor = connect.cursor()

3.執行一個SQL語句

cor.excute("select * from user;")

4.獲取SQL的結果

for row in cor.fetchall():

print row

5.關閉連接

connect.close()

⑦ centos7 Python2.7配置文件在哪

這個要看你的習慣了,你可以參照一下我的測試機,安裝路徑。

⑧ centos7 python在哪

過寫入syntax on來開啟語法提示,也是不其作用的。這里需要安裝兩個套件:vim-enhanced-7.0.109-6.el5 和vim-common-7.0.109-6.el5。簡單的通過yum安裝:yum install -y vim-enhanced.安裝完後查詢是否安裝成功:[root@ybw_01 python]# rpm -qa

⑨ centos7 怎麼安裝python-dev

在使用 Python 進行開發時需要安裝一些依賴包,最近在 CentOS 下安裝 python-dev 包時總是找不到,CentOS 下叫做 python-devel,而非一般開發包的 -dev(Ubuntu 下還是叫做 python-dev)

⑩ centos7默認安裝的python-pip在哪

要安裝pip,首先要安裝setuptools,選擇 Windows (simplified) 右鍵點擊 ez_setup.py 另存為,把ez_setup.py下載好。 然後打開cmd, 把當前工作路徑改為ez_setup.py所在路徑,輸入python ez_setup.py,即可自動安裝好!

熱點內容
解壓縮好卡 發布:2025-01-09 10:18:16 瀏覽:794
物資補給站我的世界伺服器 發布:2025-01-09 10:18:09 瀏覽:62
伺服器ip顯示泛播 發布:2025-01-09 10:10:34 瀏覽:713
緩存火影圖片 發布:2025-01-09 10:05:00 瀏覽:645
設置消費密碼驗證的渠道是什麼 發布:2025-01-09 09:59:21 瀏覽:871
小米9域名伺服器地址 發布:2025-01-09 09:59:14 瀏覽:607
各類資料庫 發布:2025-01-09 09:58:30 瀏覽:254
php判斷進制 發布:2025-01-09 09:54:44 瀏覽:282
何謂編程結構 發布:2025-01-09 09:54:09 瀏覽:381
python期末 發布:2025-01-09 09:54:01 瀏覽:709