python typing typescript_Python的价值,对比Java/Typescript
我的工作语言是java/kotlin/typescript, 本来是不喜欢它的,不理解它存在的价值,觉得它是个很难在实际工作中使用的语言,比如说做web app的后台,它肯定比不上java,因为不太可能有Netty, Hibernate这样的东西基于Python来做; 做Web前台,肯定比不上Angular Typescript这些; 做桌面,估计比不过WPF/C#,做底层和c/c++比较就更不用说了。
但最近在数学运算方面,发现它确实有价值。其实这是取舍的好例子。一种语言,适合大工程,那么开发小程序可能就比较费劲。而写小规模的程序,验证算法什么的,可能就是Python生存的土壤,我觉得它的优点主要如下:
运算符重载
这个事情争议很多。因为程序员可以定义奇形怪状的运算符,表达各种各样的意思,可能有很多不恰当的应用。但话说回来,如果很好的利用,绝对是一件好东西。对比一下这点代码,高下立见
print("度规张量的最原始解释: 将向量的斜角坐标转换成笛卡尔坐标再运算,"
"(Va @ G.T) @ (G @ Va)\n",
(Va @ G.T) @ (G @ Va))
print("度规张量的最原始解释: 将向量的斜角坐标转换成笛卡尔坐标再运算,"
"(Va @ G.T) @ (G @ Va)\n",
np.matmul( np.matmul(Va, G.T), np.matmul(G, Va)))
c/c++可以,但比起python,就难用的多了。
数学运算方便
做2**1000这种运算,java麻烦很多。要用BigInteger之类的
拿起来就写,不用定义类、main函数什么的
kotlin也有这个特性,不过kotlin倾向于更复杂的工程,所以这个特性默认不开启。事情总有两面性,这是一个好例子。
直接可以执行py文件
这是脚本语言的典型特征,不用编译。虽然kotlin也有解释器,但正常还是需要编译的,这是取舍,事情两面性的另一个例子。ASP, PHP这种改了刷新立即生效的特性,一直让人怀念。
安装包很好
安装完了,基本上就可以写程序使用了。不像java/typescript这些,还得做各种配置,有一定的门槛。不过像pip这些东西,也是有点增加了复杂性。如果能够一个简单的配置文件,列出来需要什么,然后执行程序,会自动下载依赖的库,那就好多了。
python typing typescript_Python的价值,对比Java/Typescript相关推荐
- Go语言和Java、python等其他语言的对比分析
一.Go语言设计初衷 1.设计Go语言是为了解决当时Google开发遇到的问题: 大量的C++代码,同时又引入了Java和Python 成千上万的工程师 数以万计行的代码 分布式的编译系统 数百万的服 ...
- 对比java和python对比
1.难易度而言.python远远简单于java. 2.开发速度.Python远优于java 3.运行速度.java远优于标准python,pypy和cython可以追赶java,但是两者都没有成熟到可 ...
- Python使用matplotlib绘制分组对比柱状图(bar plot)可视化时汉语(中文)标签显示成了框框□□、什么情况、我们有解决方案
Python使用matplotlib绘制分组对比柱状图可视化时(bar plot)汉语(中文)标签显示成了框框□□.什么情况.我们有解决方案 目录
- python 速度 memmap_浅析Python 读取图像文件的性能对比
浅析Python 读取图像文件的性能对比 发布时间:2020-08-30 16:31:06 来源:脚本之家 阅读:57 作者:BriFuture''s Blog 使用 Python 读取一个保存在本地 ...
- 强势崛起的Python会在十年内取代Java吗?
现在最火的程序设计语言是什么?当然是--Python.你知道吗?现在连小学生都开始学Python了.Python在编程语言排行榜上也一路高歌猛进,蹿升到了第四的位置,现在除了老牌的Java.C和C++ ...
- 从编码层面对比java和c#
java和c#都是面向对象编程高级语言,总体上来讲,它们还是很相似的,因为它们在发展过程中都很大程序上学习了对方不少优秀的特性.所以,一般来说,从其中一门语言转换到另外一门语言应该都不会有很大问题. ...
- 对比Java和.NET多线程编程
这篇文章以对比的方式总结Java和.NET多线程编程. 基本概念 多线程:很多开发语言都提供多线程编程支持,比如Java,C#. 并发(concurrent):即使对于单核CPU,我们也会采用多线程等 ...
- 通过Python让数据产生价值,做到这4个字就够了
导读:今天这篇文章是「大数据」内容合伙人囧神关于<Python数据分析与数据化运营>的一篇读书笔记.在大数据公众号后台对话框回复合伙人,免费读书.与50万「大数据」同行分享你的洞见. 作者 ...
- python 两个队列进行对比
python 两个队列进行对比 list01 = [1,2,3,4] list02 = [1,3,5] for i01 in list01:is_in_02 = Falsefor i02 in lis ...
最新文章
- First Unique Character in a String(leetcode387)
- hibernate延迟加载lazy的原理,以及为什么session关闭会报错
- Git入门最终集!SSH公钥是乱码怎么办?IDEA与Git!将自己的代码上传至远程仓库!
- 写给那些在技术路上奔跑的人们!!!!!
- linux centos 下载rpm源码包
- python 仪表盘-跟小白学Python数据分析——绘制仪表盘
- error_reporting(“E_ALL”)和ini_set(“display_errors”, “on”)的区别?
- 【每日一题】7月1日题目精讲 借教室
- python最短路径例子_Python实现的多叉树寻找最短路径算法示例
- Spring集成单元测试
- android横向滑动缩放,移动端实现内容左右滑动,并点击放大效果的问题
- 搭建vue项目时运行npm run dev 报错问题解决
- SQL Server 2008空间数据应用系列九:使用空间工具(Spatial Tools)导入ESRI格式地图数据...
- 银行卡Bin查询接口
- (附源码)Python在线办公系统 毕业设计 071116
- 1.3多媒体存储技术
- Android三大动画介绍及使用
- 应用COMSOL Multiphysics分析水平井压裂裂缝应力干扰现象
- MySQL定时任务,清理表数据
- vue在日历中使用 tippyjs 来做悬浮弹框自定义插入html