大家還記得Technical Album 徵文大賽嘛?
下方是投稿的第二篇作品,(偷偷)預告一下該文作者會出一系列相關文章來介紹與python 相關的知識,大家可以期待一下。
為什麼要學習 python ?相信很多同學都有這個疑問。有一篇漫畫很好地解釋了這個問題,這則漫畫也可以通過在 python 中運行import antigravity 後看到。
優雅,簡潔,很多操作被高度封裝,只需要簡單地 import需要的包之後直接使用即可,這便是 python 能帶給我們的便利之處。藉助 python,你可以不用像使用 C++ 或者 Java 那樣關注很多底層較為細枝末節的地方,轉而專注於實現你的邏輯關係,完成快速、簡潔地開發。可以說,python 對於新手的門檻是非常低的,能很快地讓學習者獲得正反饋,並產生繼續學習的動力。python 有很多可以應用的地方,比如數據分析處理,作圖可視化,Web 爬蟲,機器學習,深度學習。再比如,位於新生 QQ 群中的 bot 也是通過 python 由筆者編寫的。
想要入門 python,首先是安裝 python 的運行環境。對於新手來說,一般推薦通過安裝 Anaconda 包管理軟體來獲得良好的 python 使用體驗。其原因在於在安裝 Anaconda 時會附帶安裝很多常用的 python 庫,相較於只安裝純淨的 python 然後自己一個個去安裝需要的包,這無疑省下了很多精力。而且在安裝 Anaconda 的時候還會附帶神器 Jupyter Notebooks,這是一款非常靈活的開發工具,能讓我們方便地編寫代碼,並進行數據的可視化。
當然,我們現在討論的 python 基本都是最新的 python3。python2 已經完成了自己的歷史使命並即將在 2020 年停止維護,不值得我們專門去學習。
接下來分 3 種主流作業系統依次介紹 Anaconda 的安裝方法,同時建議在安裝時關閉某些弱智殺毒軟體。
1.到 https://www.anaconda.com/distribution/下載 Python 3.x 版本的 Windows Installer。
2. 等待下載完成,運行下載的 exe 文件。
3. 一路 next 並同意協議。
4. 在選擇 installtion type 時建議選擇 just me。
5. 在配置 advanced installation options 時,對於第一次安裝 python 運行環境的同學,建議將 Add Anaconda to my PATH environment variable 也勾上。如果沒有勾上,記得在安裝完成後手動添加 PATH。
6. 等待安裝完成,pycharm可以選擇性安裝(暫時不建議),點擊 finsh。
7. 打開 powershell 或者 cmd (或者任何你喜歡的 terminal),輸入conda --version 驗證運行環境是否安裝成功。如果輸出了 conda 的版本,那表明安裝成功。( 關於怎麼打開 powershell 或者 cmd,按下 Win + R,輸入 powershell 或者 cmd 以後敲擊回車。)
8. Enjoy it!
1. 到 https://www.anaconda.com/distribution/下載 Python 3.x 版本的 macOS Installer。
2. 等待下載完成,運行下載的 pkg 文件。
3. 一路選擇 continue 並同意協議。
4. 在選擇安裝的位置時推薦選擇 current user。
5. 等待安裝完成,pycharm可以選擇性安裝(暫時不建議),點擊 done。
6. 打開 terminal,輸入 conda --version 驗證運行環境是否安裝成功。如果輸出了 conda 的版本,那表明安裝成功。
7. 如果提示 conda 命令沒有找到,且 terminal 中使用了非 bash 的別的 shell, 需要打開 ~/.bash_profile 將 conda 的環境變量初始化腳本粘貼到當前使用的 shell 的配置環境變量文件中(如 .zshrc)。
8. Enjoy it!
1. 到 https://www.anaconda.com/distribution/下載 Python 3.x 版本的 Linux Installer,並運行。撰稿時在 terminal 中使用的命令:
wget https://repo.anaconda.com/archive/Anaconda3-2019.07-Linux-x86_64.sh bash Anaconda3-2019.07-Linux-x86_64.sh2. 按住回車瀏覽協議,輸入 yes 同意協議。
3. 確認安裝位置,並按回車確認。
4. 等待安裝完成,在選擇是否 initialize anaconda3 時推薦選擇 yes。
5. 輸入 conda --version 驗證運行環境是否安裝成功。如果輸出了 conda 的版本,那表明安裝成功。
6. Enjoy it!
在安裝完 anaconda 後,推薦使用 conda 替代 pip 作為 python 的包管理工具。關於 conda 系列的包安裝和管理工具,由於在本教程中不會用到,請讀者自行查閱了解。可參考如下 pdf: https://docs.conda.io/projects/conda/en/latest/_downloads/1f5ecf5a87b1c1a8aaf5a7ab8a7a0ff7/conda-cheatsheet.pdf。
我們還可以進行一些額外的操作,比如對 conda 換源。源,指的是當你使用 conda 進行下載安裝時的下載源,默認的下載源的伺服器在國內的訪問速度不甚理想,所以可以換成國內的下載源來增加下載速度。具體操作可以參見https://mirror.tuna.tsinghua.edu.cn/help/anaconda/。
接下來我們來使用一下 jupyter notebook 這一神器。
1. 首先運行 jupyter notebook(直接運行或者通過 Anaconda Navigator 運行)。2. 這時瀏覽器中應該會開啟 jupyter 主頁,點擊右上角的 New,選擇 python3,新建一個 notebook。3. 單擊一個單元格,光標在單元格內閃動,便可以往裡輸入代碼,在輸入完畢後,按下 Shift+Enter運行當前單元格內的腳本並切換到下一個單元格,或者單擊上方的 Run按鈕運行當前單元格內腳本。介紹完操作,我們可以來通過下面的代碼來體驗一下 python 的魅力了:一行代碼求出 0 加到 100 的和,輸出為 5050。print(sum([i for i in range(101)]))一行代碼求出 1 到 100 中的質數,輸出為 [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]。
print([i for i in range(2, 101) if 0 not in [i % j for j in range(2, i)]])
列印楊輝三角前 10 行,
f = [1]for i in range(10): print(f) f = [x + y for x, y in zip([0] + f, f + [0])]輸出:
[1][1, 1][1, 2, 1][1, 3, 3, 1][1, 4, 6, 4, 1][1, 5, 10, 10, 5, 1][1, 6, 15, 20, 15, 6, 1][1, 7, 21, 35, 35, 21, 7, 1][1, 8, 28, 56, 70, 56, 28, 8, 1][1, 9, 36, 84, 126, 126, 84, 36, 9, 1]或者將三玖下載到當前目錄下?import requestsimport threadingtags = "nakano_miku"imgUrls = [item['jpeg_url'] for item in requests.get(f"https://yande.re/post.json?tags={tags}").json()]def getImg(i, url): r = requests.get(url) print(f'./{i}.jpg', url) with open(f'./{i}.jpg','wb') as f: f.write(r.content)for i, url in enumerate(imgUrls[:10]): threading.Thread(target=getImg, args=(i, url)).start()下一篇我們會教大家如何用 python 製造出幻影坦克圖。所謂幻影坦克圖,就是在外面看到的略縮圖會和點開看到的原圖有區別。
如果對python的使用有任何感興趣、想要了解到內容,也歡迎在下方留言,說不定下篇推送中就有你想要的內容。
1. https://docs.anaconda.com/anaconda/
撰稿:張泊明
排版:沈逸凡