1. 程式人生 > 實用技巧 >我發現了個 Python 黑魔法,執行任意程式碼都會自動念上一段 『平安經』

我發現了個 Python 黑魔法,執行任意程式碼都會自動念上一段 『平安經』

最近的"平安經"可謂是引起了不小的風波啊。

作為一個正兒八經的程式設計師,最害怕的就是自己的程式碼上線出現各種各樣的 BUG。

為此明哥就研究了一下,如何在你執行任意 Python 程式碼前,讓 Python 直譯器自動念上一段平安經,保佑程式碼不出 BUG 。

沒想到還真被我研究出來了

做好心理準備了嘛?

我要開始作妖了,噢不,是開始唸經了。

感謝佛祖保佑,Everything is ok,No bugs in the code.

你一定很想知道這是如何實現的吧?

如果你對 Linux 比較熟悉,就會知道,當你在使用 SSH 遠端登陸 Linux 伺服器的時候?會讀取 .bash_profile

檔案載入一些環境變數。

.bash_profile 你可以視其為一個 shell 指令碼,可以在這裡寫一些 shell 程式碼達到你的定製化需求。

而在 Python 中,也有類似 .bash_profile 的檔案,這個檔案一般情況下是不存在的。

我們需要新建一個使用者環境目錄,這個目錄比較長,不需要你死記硬背,使用 site 模組的方法就可以獲取,然後使用 mkdir -p 命令建立它。

在這個目錄下,新建一個 usercustomize.py 檔案,注意名字必須是這個,換成其他的可就識別不到啦。

這個 usercustomize.py 的內容如下(明哥注:佛祖只保佑幾個 Python 的主要應用方向,畢竟咱是 Python 攻城獅嘛...)

這個檔案我放在了我的 github 上,你可以點此前往獲取。

一切都完成後,無論你是使用 python xxx.py 執行指令碼

還是使用 python 進入 Python Shell ,都會先念一下平安經保平安。

除此之外,可還有其他方法呢?

當然是有,只不過相對來說,會麻煩一點了。

先來看一下效果。

先檢視在 ~/Library/Python/3.9/lib/python/site-packages 目錄下並沒有 usercustomize.py 檔案。

但是在執行 python 進入 Python Shell 模式後,還是會列印平安經。

這又是如何做到的?真見鬼了呀。

方法其實也很簡單,只要做兩件事,就能實現這樣的效果:

第一件事,在任意你喜歡的目錄下,新建 一個Python 指令碼,名字也隨意,比如我叫 startup.py,內容還是和上面一樣

第二件事,設定一個環境變數 PYTHONSTARTUP,指向你的指令碼路徑

$ export PYTHONSTARTUP=/Users/MING/startup.py

這樣就可以了。

但是這種方法只適用於 Python Shell ,只不適合 Python 執行指令碼的方法。

如果要在指令碼中實現這種效果,我目前想到最粗糙我笨拙的方法了 -- 手動載入執行

本文分享了兩個非常冷門 Python 的黑魔法技巧,可以實現在你執行任意的 Python 程式碼前,自動召喚佛祖念上一段平安經。

希望本篇分享能對你有用,更多關於 Python Shell 的玩法,我已經整理在了我的 Github 上 https://github.com/iswbm/magic-python ,可以前往檢視。