为什么大家都推荐你学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, 试试它,绝对不会让你失望的,。操作向量/矩阵跟基本类型一样方便
语法简洁优美, 功能强大, 标准库跟第三方库强大, 应用领域非常广,你有什么理由不选择它呢?