python门槛相对较低,使用者大体分为两类,一类是算法研究人员,另一类是专业程序员。前者比较倾向于直接使用最简单的配置方法,用anaconda,后者则倾向于自己动手。
专业程序员,往往具有以下这些特点:具有软件工程的思维,动不动就是需求分析、概要设计/详细设计、测试、实施、运维;追求性能;强调兼容性、可维护性、可测试性、稳定性;喜欢使用git、SVN等版本管理工具;最终作品常常用于生产环境,主要服务于用户。
而算法研究人员则有很大的不同。他们把python只是作为一个工具,用来探索算法、分析数据、总结规律的,甚至干脆就是用来写论文的。他们不太考虑性能、稳定性等问题。
最极端的例子,他们用python,花了很大精力,可能就得出一个y=ax+b,但是这个a和b就是精华,是极具技术含量的。而如何将这个公式放到生产环境,则是交给专业程序员。程序员可能会使用其他语言去实现它。
至于为什么专业程序员喜欢自己动手,这可能与他们平时的习惯有关,很多程序员都在Linux下进行开发,早都习惯了自己动手的思维模式,这和windows区别比较大。还有就是上面提到的,东西往往都要跑在生产环境(而不是理论研究),需要考虑很多东西,追求灵活性和可掌控性,要的就是“一切尽在掌控之中”的感觉。
大家拿开车来说,有的人只是作为代步工具,自动挡,能开、安全、好看就行。而有的人是作为比赛工具(赛车手)或盈利工具(出租车),区别就大了,大家可以自己体会。