溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

python的生態(tài)工具怎么用

發(fā)布時(shí)間:2022-01-18 14:49:34 來源:億速云 閱讀:155 作者:iii 欄目:編程語(yǔ)言

這篇文章主要介紹“python的生態(tài)工具怎么用”,在日常操作中,相信很多人在python的生態(tài)工具怎么用問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”python的生態(tài)工具怎么用”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

1、1秒鐘啟動(dòng)一個(gè)下載服務(wù)器

Python2:python -m SimpleHTTPServer

python3:python -m http.server

訪問:http://192.168.191.100:8000/

2、字符串轉(zhuǎn)換為json

[root@localhost ~]# echo '{"job":"developer","name":"Imx","sex":"male"}' |python -m json.tool

{

    "job": "developer", 

    "name": "Imx", 

    "sex": "male"

}

[root@localhost ~]# echo '{"address":{"province":"zhejiang","city":"hangzhou"},"name":"Imx","sex":"male"}' |python -m json.tool

{

    "address": {

        "city": "hangzhou", 

        "province": "zhejiang"

    }, 

    "name": "Imx", 

    "sex": "male"

}


3、檢查第三方庫(kù)是否正確安裝

1)交互式

[root@localhost ~]# python

Python 2.6.6 (r266:84292, Aug 18 2016, 15:13:37) 

[GCC 4.4.7 20120313 (Red Hat 4.4.7-17)] on linux2

Type "help", "copyright", "credits" or "license" for more information.

>>> import paramiko

2)-c參數(shù)

[root@localhost ~]# python -c "import paramiko"

4、pip用法

pip是easy_install的替代品.

pip在epel源里面,所以需要下載epel源。

yum -y install epel-release

yum install python-pip

pip install -U pip 升級(jí)pip版本

1)、搜索安裝包

pip search flask

2)、安裝特定的安裝包版本

pip install flask==0.8

3)、刪除安裝包

pip uninstall Werkzeug

4)、查看安裝包的信息

pip show flask

5)檢查安裝包的依賴是否完整(pip 9.0.1提供的最新子命令)

pip check flask

6)、查看已安裝的安裝包列表

pip list

7)、導(dǎo)出系統(tǒng)已安裝的安裝包列表到requirements文件

pip freeze > requirements.txt

8)、從requirements文件安裝

pip install -r requirements.txt 

9)、使用pip命令補(bǔ)全

pip completion  --bash >> ~/.profile

soure ~/.profile 

使用命令補(bǔ)全后,通過鍵入pip i,將會(huì)自動(dòng)輸入pip install


5、加速pip安裝的技巧

1)、使用使用豆瓣或阿里云的源加速軟件的安裝

pip install -i https://pypi.douban.com/simple/ flask

每次都要指定鏡像源地址比較麻煩,可以如下解決:

vim ~/.pip/pip.conf

[global]

index-url = https://pypi.douban.com/simple/

2)、將軟件下載到本地部署

#下載到本地

pip install --download='pwd' -r requirements.txt

或者

pip install --download='pwd' flask

ls就后可以看到下載到了當(dāng)前目錄,pip會(huì)自動(dòng)處理依賴問題,即把依賴包也下載過來。

#本地安裝

pip install --no-index -f file://'pwd' -r requirements.txt

pip install --download='pwd' flask

6、代碼補(bǔ)全插件

終于發(fā)現(xiàn)了一個(gè)插件,對(duì)于Vim下代碼塊的自動(dòng)補(bǔ)全支持的很好。給大家推薦snipMate。snipMate可以幫助您在vim上實(shí)現(xiàn)類似Textmate的功能,自動(dòng)代碼塊的能力非常強(qiáng)大,而且代碼塊是可定制的。我們只需編輯~/.vim/snippets/目錄下的*.snippets文件就可以根據(jù)自己的要求自動(dòng)產(chǎn)生代碼。

使用

下載snipMate,解壓到你的Vim目錄:~/.vim/

下載地址:http://www.vim.org/scripts/script.php?script_id=2540

建立測(cè)試文件:

[root@t-mysql01 .vim]# vim a.py

#!/bin/python

輸入for后,再按tab鍵,會(huì)自動(dòng)補(bǔ)全代碼。


7、編輯提示插件jedi-vim

與snipmate不同的是,該插件更加智能,jedi-vim更親切的稱呼是編程提示,而不是代碼補(bǔ)全插件。

安裝方法:

環(huán)境: 

python 2.6以上 

vim >= 7.3

安裝一個(gè)python插件的管理工具,vim-pathogen 或者 vundle,這里安裝pathogen

mkdir -p ~/.vim/autoload ~/.vim/bundle && \

curl -LSso ~/.vim/autoload/pathogen.vim https://tpo.pe/pathogen.vim

編輯 ~/.vimrc 文件,添加

execute pathogen#infect()

這里需要注意的是,如果vimrc文件中有包含

syntax on

filetype plugin indent on

等語(yǔ)句,那么就要把上面的語(yǔ)句放在這些之前,比如下面這樣:

execute pathogen#infect()

syntax on

filetype plugin indent on


安裝jedi

pip install jedi

獲取jedi-vim

cd ~/.vim/bundle/ && git clone --recursive https://github.com/davidhalter/jedi-vim.git


8、語(yǔ)法檢查和高亮插件

Syntastic 是 Vim 用來檢驗(yàn)語(yǔ)法的插件,通過外部語(yǔ)法校驗(yàn)器校驗(yàn)文件并將錯(cuò)誤呈現(xiàn)給用戶。該過程可以在需要時(shí)進(jìn)行,或者在文件保存的時(shí)候自動(dòng)進(jìn)行?!痹摬寮?官方文檔 如是說?!叭绻麢z測(cè)到語(yǔ)法錯(cuò)誤就會(huì)提示用戶,因?yàn)椴挥镁幾g代碼或者執(zhí)行腳本就可以知道語(yǔ)法錯(cuò)誤,用戶也就樂享與此了?!?br/>

安裝過程和第一部分提到的方法類似,你只需要運(yùn)行下列命令即可:

cd ~/.vim/bundle/

git clone https://github.com/scrooloose/syntastic.git

一旦你成功安裝這個(gè)插件(即上述命令執(zhí)行成功),你就不需要進(jìn)行任何配置了——當(dāng) Vim 啟動(dòng)時(shí)會(huì)自動(dòng)加載這個(gè)插件。

現(xiàn)在,打開一個(gè)源碼文件并用 :w Vim 命令保存即可使用這個(gè)插件了。等待片刻之后,如果在源碼中有語(yǔ)法錯(cuò)誤的好,就會(huì)高亮顯示出來。

9、vim 設(shè)置 python 自動(dòng)縮進(jìn)

在Vim中設(shè)置python的自動(dòng)縮進(jìn):

a)、編輯vimrc文件: 輸入命令

vim /etc/vim/vimrc/

b)、貼入如下代碼 保存即可(測(cè)試基本上可以 if好像有點(diǎn)問題)

set filetype=python

au BufNewFile,BufRead *.py,*.pyw setf python

set autoindent " same level indent

set smartindent " next level indent

set expandtab

set tabstop=4

set shiftwidth=4

set softtabstop=4


10、使用ipython交互式編程

1)、更好的編輯器

yum install ipython

#ipython

In [10]: line = "Mysql slave binlog position: master host '10.173.33.35', filename 'mysql-binlog0002',position '43242343243'"

In [11]: line.split("'")

Out[11]: 

['Mysql slave binlog position: master host ',

'10.173.33.35',

', filename ',

'mysql-binlog0002',

',position ',

'43242343243',

'']

In [12]: host = line.split("'")[1]

In [13]: print host

10.173.33.35

In [18]: filename = line.split("'")[3]

In [19]: print filename

mysql-binlog0002

In [21]: position = line.split("'")[5]

In [22]: print position

43242343243

In [25]: print (host,filename,position)

('10.173.33.35', 'mysql-binlog0002', '43242343243')

In [27]: position = int(position)

In [28]: type(position)

Out[28]: int

In [29]: print (host,filename,position)

('10.173.33.35', 'mysql-binlog0002', 43242343243)

2)、更好的獲取幫助信息

In [30]: import os

In [32]: ?os.path.is*

os.path.isabs

os.path.isdir

os.path.isfile

os.path.islink

os.path.ismount

In [33]: os.path.isfile?

Type:      function

String Form:

File:      /usr/lib64/python2.6/genericpath.py

Definition: os.path.isfile(path)

Docstring:  Test whether a path is a regular file

In [35]: import json

In [36]: json.dump?

In [36]: json.dump??  //使用兩個(gè)問號(hào),獲取的幫助信息更加全面,甚至包含函數(shù)的實(shí)現(xiàn)源碼

In [39]: d = dict(a=1,b=2, c=3)

In [40]: json.dump?

In [42]: json.dumps(d)  //將字典轉(zhuǎn)換成json字符串

Out[42]: '{"a": 1, "c": 3, "b": 2}'

除了使用問號(hào)的方式獲取對(duì)象的幫助信息外,ipython還提供了另外的獲取對(duì)象信息,可以分別獲取對(duì)象的定義、文檔和文件等。

In [43]: import json

In [44]: %pdef json

Object is not callable.

In [45]: %pdef json.dump

json.dump(obj, fp, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding='utf-8', default=None, **kw)

In [47]: %pfile json.dump

In [47]: %pdoc json.dump

In [49]: %pinfo json.dump

3)、magic函數(shù)

所有ipython提供的函數(shù)都以%開頭,這些函數(shù)成為magic函數(shù)。

In [50]: %lsmagic 或者%來獲取所有的magic函數(shù)。

In [51]: %save?  //查看magic函數(shù)的幫助信息

4)、與操作系統(tǒng)交互

可以使用%ls %pwd等執(zhí)行l(wèi)inux下的命令,或者!ls !cd這樣也可以執(zhí)行l(wèi)inux下的命令。

也可以通過賦值的方式捕獲命令測(cè)輸出:

In [7]: data = !df -h

In [9]: data

Out[9]: 

['Filesystem      Size  Used Avail Use% Mounted on',

'/dev/sda3        96G  3.9G  88G  5% /',

'tmpfs          1000M  68K 1000M  1% /dev/shm',

'/dev/sda1      477M  41M  411M  9% /boot']


11、jupyter notebook的使用

[root@localhost ~]# pip install jupyter

如果報(bào) Python.h: No such file or directory,可以 yum install python-devel來解決。

到此,關(guān)于“python的生態(tài)工具怎么用”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI