為什麼大家都推薦你學Python?而不是C語言或者是JAVA呢?
因為——
python很靈活,一定程度上函數也可以傳參和注入,所以代碼的靈活性要大的多。
python自帶了函數的curry化以及遲滯運算方式,以及閉包語法更容易實現,所以在一定層面上python還是比java難掌控的。
python擁有的duck typing屬性,作為動態語言專有的特性,python可以讓對象擺脫靜態語言範式的約束,隨意的給程序打補丁,所以程序擴展性更好。
其實總結起來就一句話:寫起來快、看起來明白。作為通用性的語言基本上什麼都能幹,除了一些對性能要求很高的場合。
若是你想問問具體的,語言方面給你舉幾個栗子:
0.一切都是對象
類(class本身)/函數/類方法是callable的對象
因為是對象,所以你當然可以傳來傳去啦. 比如:
1.List表達式
簡潔美觀,十分不能更多——把"1023"變成 [1, 2, 3]
對dict也是類似:
2.yield關鍵字:
讓你的返回更便捷舒心,當你需要返回很多東西然後逐一使用時, 可以更加隨心所欲的一次返回一個
3.裝飾器@:
把something_heavy()返回的結果緩存起來(以函數名+args為緩存的鍵值,只緩存最近使用的10條)
4.運算符重載:
numpy, 試試它,絕對不會讓你失望的,。操作向量/矩陣跟基本類型一樣方便
語法簡潔優美, 功能強大, 標準庫跟第三方庫強大, 應用領域非常廣,你有什麼理由不選擇它呢?
閱讀更多 編程獅APP 的文章