linux自帶python
Linux中自帶Python,因為有很多操作系統本身的需要,都要用到Python的。
相關推薦:《Python教程》
比如Linux的軟體升級工具,紅帽系的yum,Den/Ubuntu系的apt-get,都是基於Python的。而且它們的版本要保持原始的一致,就算是升級Python版本,也要留意老版本的那些腳本還能正常使用。
可以說,在Linux/Unix的各種腳本語言中,除系統本身自帶的各種shell外,另一個就是Python語言用得最多。一些系統如FreeBSD還自帶了Rubby。
B. linux怎麼查看python版本
當你在系統棚乎上安裝了python後,銷和盯(linux里是默認自帶虧和python的),你只需要輸入下面的簡單的命令來查看python的版本號:
python -v
或者是
python --version
C. linux 終端 運行 python
Linux終端中的操作均是使用命令行來進行的。因此,對於小白來說,熟記幾個基本的命令行和使用方法能夠較快的在Linux命令行環境中將python用起來。
打開命令行窗口
打開命令行窗口的快捷鍵如下:
Ctrl + Alt + t
關閉名命令行窗口
關閉命令行窗口的快捷鍵如下:
Ctrl + d
進入python環境
在命令行中直接輸入python即進入了python的編輯環境。進入環境後最明顯的提示是:游標由~$變成>>>。
退出python環境
使用ctrl +d的方式退出python環境。回到命令行環境。
在python環境中輸入多行函數
在python環境中,回車是輸入結束並執行語句。在輸入多行函數的情況下,輸入一行後回車則直接運行了某句代碼而不是整個函數塊。因此,需要能夠換行但不結束輸入的方法。
在語句的末尾輸入英文的;\即可實現換行。
例如:
?
1
2
3
def weight_variable(shape):
initial = tf.truncated_normal(shape, stddev=0.1);\
return tf.Variable(initial);\
注意:輸入函數塊時注意縮進,否者會報出IndentationError: unexpected indent python錯誤。
non-ascii character xe5 in file解決方法
原因:程序中的編碼錯誤,python默認支持acii模式,但不支持utf8,因此,程序中的中文注釋會引發Error。
解決方法:源代碼文件第一行添加#coding:utf-8即可避免。
退出python環境
使用ctrl +d的方式退出python環境。回到命令行環境。
在python環境中輸入多行函數
在python環境中,回車是輸入結束並執行語句。在輸入多行函數的情況下,輸入一行後回車則直接運行了某句代碼而不是整個函數塊。因此,需要能夠換行但不結束輸入的方法。
在語句的末尾輸入英文的;\即可實現換行。
例如:
?
1
2
3
def weight_variable(shape):
initial = tf.truncated_normal(shape, stddev=0.1);\
return tf.Variable(initial);\
注意:輸入函數塊時注意縮進,否者會報出IndentationError: unexpected indent python錯誤。
non-ascii character xe5 in file解決方法
原因:程序中的編碼錯誤,python默認支持acii模式,但不支持utf8,因此,程序中的中文注釋會引發Error。
解決方法:源代碼文件第一行添加#coding:utf-8即可避免。
D. 怎麼更換linux自帶的python版本
whereis python,先查看你linux上有多少python.
whereis python,查看你現在用的是哪個
再把你想要的那個放到env的path前面。
最簡單的方法,改變默認的python路徑的名字,然後把你想要的那個python,做一個軟鏈,鏈接到默認的pytho路徑
E. 在Linux裡面,創建一個python文件
打開終端,進入要創建Python文件的目錄。
創建一個Python文件,例如hello.py,使用vi編輯器:
- vi hello.py
在vi編輯器中按下 i 進入編輯模式,鏈和輸入以下代碼:
#!/usr/bin/env python3
print("hello world")
這里使用了shebang(#!/usr/bin/env python3)來指定使橡喚銀用Python 3來執行該文件。
按下ESC鍵,輸入:wq保存並退出vi編輯器梁宴。
在終端中使用chmod命令修改該文件的許可權,使其可執行:
- chmod +x hello.py
執行該文件:
python3 hello.py
執行後,終端會輸出 "hello world"。
F. Linux python默認使用conda
本篇介紹如何讓linux在不激活任何環境時,調用python命令直接使用到conda的某個子環境。
首先說明本篇文章的工作原由,以及踩過的坑。
在之前的工作中,一般進行python開發都會使用conda進行包管理,以達到隔離多個環境的目的。例如:
問題來了,在一些場景中,外部程序需要調用伺服器上的api,又無法做出 conda activate 的命令,命令是直接使用 python xxx.py ,這時候只能使用linux自帶的python命令,或者conda的base環境的python命令。所以需要將環境搭建在linux的python或者conda的base。搭建過程中,遇到的問題來自兩個方面:
解決方法:將linux默認的python做軟鏈接,鏈接到conda的子環境。
創建環境: conda create -n child_env python=3.6
切換環境: conda activate child_env
安裝pytorch: conda install pytorch torchvision cudatoolkit=10.0
安裝tensorflow: conda install tensorflow-gpu
安裝其他包: conda install xxx,xxx,...
先將老的鏈接備份: mv /usr/bin/python /usr/bin/python22
再做鏈接: ln -s /root/anaconda3/envs/child_env/bin/python3 /usr/bin/python
第一個路徑需要改成自己的anaconda路徑,child_env改成自己的環境名,第二個路徑不用改。
先關掉conda環境: conda deactivate
再運行: python xxx.py
用這個方法,雖然解決了直接調用python命令的問題。但是引入了新的問題。
更換默認python版本
G. linux 怎樣找到python解釋器
linux自帶python,如果你要找python解釋器的位置,在命令行中輸入:
whichpython
一般都是:/usr/bin/python,這個就是python解釋器的入口
如果解決了您的問題請採納!
如果未解決請繼續追問
H. Python腳本在Linux上怎麼運行
1、一般而言,Linux現在的所有版本都自帶python的。
2、目前應該所有的耐薯版本都支持Python2.7,如Ubuntu的16.10和17.04目前已經支持Python3了。
3、如何運行Python。
#在命令終端直接運行
~python--version
Python3.5.3
#下面就提示當前的Python版本,如果你要運行一個python腳本。
python梁升/xxx/xx/mypy.py
#這樣就可以運行了,你可以看看這里,學習一下新手必須掌握昌渣者的Linux命令。www.linuxprobe.com/chapter-02.html#
I. Linux:Python編寫Linux自定義命令工具
摘要: Linux , Python
工作中需要頻繁使用到一個字元串的md5,因此編寫一個md5命令工具,輸入字元串直接得到輸出,並且命令支持參數設置,比如是否事先格式化,指定不同參數可以支持多功能輸出,操作步驟如下
直接vim一個腳本,腳本名md5不需要.py後綴,這樣更像一個命令,注意在腳本第一行引入python解釋器,並設置utf-8編碼
其中-f支持先格式化再得到md5,-l支持傳入多個字元串用空格分開
賦予可執行許可權
測試是否符合要求
直接放置到 /usr/local/bin 目錄下(需要root許可權)
也可以使用軟連接的方式,推薦使用絕對路徑
之後就可以在環境變數中直接使用到md5命令
shebang :中文翻譯「釋伴」,由 #! 開頭的字元串,出現在文本文件的 第一行 。類UNIX操作系統的程序載入器會分析shebang後的內容,將這些內容作為解釋命令,並調用該指令,並將載有 shebang的文件路徑作為該解釋器 的參數
比如 #!/bin/bash 就是使用/bin/bash作為解釋器運行腳本,如果以Python作為解釋器運行腳本先找到Python解釋器的路徑,一般在Linux自帶的 /usr/bin/python 是Python2版本,也可以指定其他Python版本 #!/opt/anaconda3/bin/python ,第二行為 # coding=utf-8 用來指定編碼格式,否則Python2輸出中文亂碼
對於自定義腳本,推薦放置在 /usr/local/bin 目錄,有多個可執行文件目錄在環境變數中,區別如下:
/bin : 包含二進制可執行文件,為系統最基本的命令,如ls等
/sbin : 與/bin 類似,不同之處是其為root許可權命令文件
/usr/bin : 系統預裝可執行文件,會隨著系統升級而改變
/usr/sbin : 同上,不同之處是其為root許可權運用
/usr/local/bin : 三級目錄,用戶自己的可執行文件,系統不管理
/usr/local/sbin : root許可權用戶程序