有關(guān)于使用atom進(jìn)行python開(kāi)發(fā)的網(wǎng)上資料比較少,最近發(fā)現(xiàn)使用atom結(jié)合hydrogen插件進(jìn)行python開(kāi)發(fā),尤其是數(shù)據(jù)挖掘相關(guān)的工作,整體體驗(yàn)要好于vscode,vscode雖然說(shuō)也有連接jupyter的工具,但是交互式的開(kāi)發(fā)hydrogen體驗(yàn)更好。
這里放了個(gè)動(dòng)圖來(lái)展示一下hydrogen的強(qiáng)大
插件安裝
python
- hydrogen
- atom-ide-ui
- ide-python
這里要注意,本地的pip需要 安裝 python-language-server[all],在ide-python的readme中有詳細(xì)說(shuō)明
遠(yuǎn)程連接
- remote ftp
- 美化
- simplified-chinese-menu(漢化補(bǔ)丁)
- file-icons(文件夾圖標(biāo))
- bracket-colorizer(彩虹括號(hào),找了好久,確定就是必須配合暗色主題)
- atom-bracket-highlight(括號(hào)高亮)
- atom-clock(加個(gè)時(shí)鐘在右下角)
- highlight-selected(高亮選擇)
- minimap(類似sublime的右側(cè)map欄)
- minimap-highlight-selected(選擇代碼后,map上也高亮,方便定位代碼)
插件配置
remote ftp
這里先講一下我的需求,我是需要利用其連接公司服務(wù)器上的內(nèi)容,但是公司服務(wù)器是需要跳板機(jī)的,所以我需要通過(guò)跳板機(jī)才能訪問(wèn),因此配置上會(huì)有些復(fù)雜
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
{ "protocol" : "sftp" , "host" : "跳板機(jī)域名" , / / string - hostname or ip address of the server. default: 'localhost' "port" : 跳板機(jī)端口, / / integer - port number of the server. default: 22 "user" : "用戶名" , / / string - username for authentication. default: (none) "pass" : "如果用密鑰這里就不用填" , / / string - password for password - based user authentication. default: (none) "promptforpass" : false, / / boolean - set to true for enable password / passphrase dialog. this will prevent from using cleartext password / passphrase in this config. default: false "remote" : "實(shí)際的服務(wù)器目錄,例如:/服務(wù)器域名/用戶名/目錄" , / / try to use absolute paths starting with / "agent" : " ", // string - path to ssh-agent's unix socket for ssh-agent-based user authentication. linux/mac users can set " env " as a value to use env ssh_auth_sock variable. windows users: set to 'pageant' for authenticating with pageant or (actual) path to a cygwin " unix socket." default: (none) "privatekey" : "本地私鑰path" , / / string - absolute path to the private key file ( in openssh format ). default: (none) "passphrase" : "", / / string - for an encrypted private key, this is the passphrase used to decrypt it. default: (none) "hosthash" : "", / / string - 'md5' or 'sha1' . the host's key is hashed using this method and passed to the hostverifier function. default: (none) "ignorehost" : true, "conntimeout" : 10000 , / / integer - how long ( in milliseconds) to wait for the ssh handshake to complete. default: 10000 "keepalive" : 10000 , / / integer - how often ( in milliseconds) to send ssh - level keepalive packets to the server ( in a similar way as openssh's serveraliveinterval config option). set to 0 to disable. default: 10000 "keyboardinteractive" : 如果要用動(dòng)態(tài)令牌,這里就要填true, / / boolean - set to true for enable verifycode dialog. keyboard interaction authentication mechanism. for example using google authentication (multi factor) "keyboardinteractiveforpass" : false, / / boolean - set to true for enable keyboard interaction and use pass options for password. no open dialog. "remotecommand" : "", "remoteshell" : "", "watch" :[], "watchtimeout" : 500 , / / integer - the duration ( in milliseconds ) from when the file was last changed for the upload to begin. } |
ide-python
需要配置一下python executable
填寫(xiě)你的python路徑,比如使用的是conda虛擬環(huán)境,就這樣寫(xiě)
/xxx/anaconda3/envs/xxx/bin/python
hydrogen
連接本地kernel
首先需要在上面填寫(xiě)的路徑下的python環(huán)境中安裝ipykernel
python -m ipykernel install --user --name py37
然后用atom打開(kāi)一個(gè)py文件,輸入
# %%
print('hello atom')# %%
print('每一個(gè)# %%代表一個(gè)新的cell')
然后再第2行末尾按ctrl+enter就會(huì)自動(dòng)彈出來(lái)讓你選擇環(huán)境的彈窗,選擇剛剛新建的環(huán)境即可
然后在hydrogen里面通過(guò)使用# %%
來(lái)分割每一個(gè)cell,在mac中使用option+shift+enter組合鍵來(lái)實(shí)現(xiàn)運(yùn)行當(dāng)前整個(gè)ceil,使用command+enter實(shí)現(xiàn)運(yùn)行當(dāng)前行,使用shift+enter實(shí)現(xiàn)運(yùn)行當(dāng)前行并跳轉(zhuǎn)下一行,具體可參考官方文檔
連接遠(yuǎn)程kernel
連接遠(yuǎn)程的jupyter只需要配置一下hydrogen設(shè)置里面的kernel gateways
,填上如下內(nèi)容即可
1
2
3
4
5
6
|
[{ "name" : "remote server" , "options" : { "baseurl" : "jupyter url" , "token" : "jupyter token" } }] |
然后點(diǎn)擊connect to remote kernel
即可
到此這篇關(guān)于使用atom支持基于jupyter的python開(kāi)發(fā)的文章就介紹到這了,更多相關(guān)atom基于jupyter的python開(kāi)發(fā)內(nèi)容請(qǐng)搜索服務(wù)器之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持服務(wù)器之家!
原文鏈接:https://www.cnblogs.com/harrylyx/p/15166101.html