1. 程式人生 > >python黑科技庫:FuckIt.py,讓你代碼從此遠離bug

python黑科技庫:FuckIt.py,讓你代碼從此遠離bug

global nbsp defined ogr fuck pac tps 裝飾 cap

今天給你推薦的這個庫叫 “FuckIt.py”,名字一看就是很黃很暴力的那種,作者是這樣介紹它的:

FuckIt.py uses state-of-the-art technology to make sure your Python code runs whether it has any right to or not. Some code has an error? Fuck it.

FuckIt.py 使用了最先進的技術能夠使你的代碼不管裏面有什麽樣的錯誤,你只管 FuckIt,程序就能“正常”執行,兵來將擋水來土掩。

還是先來看個例子怎麽使用的吧。

安裝

pip install fuckit

假設有一個目標文件: broke.py

技術分享圖片

broke.py 中有幾處明顯的錯誤,包括語法錯誤,變量 broken_code 沒有被定義,還有0當作被除數。

如果直接 import broke 肯定會報錯

技術分享圖片

這時你可以使用 fuckit 將 broke 導入進來。

技術分享圖片

調用函數 f 的時候也會報錯

>>> broke.f()

NameError: global name ‘broken_code‘ is not defined

你可以使用鏈式 fuckit 來調用這個有問題的函數

>>> fuckit(broke).f()

fuckit chaining works

或者

>>> fuckit(fuckit("broke")).f()

fuckit chaining works

除此之外,fuckit 還可以作為裝飾器和上下文管理器來使用。

裝飾函數

技術分享圖片

裝飾類

技術分享圖片

看到這裏,是不是感覺 fuckit 很暴力,那麽它能用在什麽場景?個人認為這個庫很雞肋,因為你的代碼不應該容忍這些錯誤的出現,如果出現了錯誤應該立馬修復才是,但有一種可能的使用場景是你剛接手一份超復雜的代碼,裏面各種看不懂的代碼,而這些操蛋的代碼時不時出現一個錯誤,而你又沒法駕馭它的時候,你就用 fuckit 吧。

python黑科技庫:FuckIt.py,讓你代碼從此遠離bug