这里是我的一些总结,有些是参考别人的(在这里谢谢!!!)
区别:
1.Python比Java简单,学习成本低,开发效率高
2.Java运行效率高于Python,尤其是纯Python开发的程序,效率极低
3.Java相关资料多,尤其是中文资料
4.Java版本比较稳定,Python2和3不兼容导致大量类库失效
5.Java开发偏向于软件工程,团队协同,Python更适合小型开发
6.Java偏向于商业开发,Python适合于数据分析
7.Java是一种静态类型语言,Python是一种动态类型语言
8.Java中的所有变量需要先声明(类型)才能使用,Python中的变量不需要声明类型
9.Java编译以后才能运行,Python直接就可以运行;
10.JAVA 里的块用大括号对包括,Python 以冒号 + 四个空格缩进表示。
11.JAVA 的类型要声明,Python 的类型不需要。
12.JAVA 每行语句以分号结束,Python 可以不写分号。
13.实现同一功能时,JAVA 要敲的键盘次数一般要比 Python 多。
一些细节区别:
1.数
python只有四种数据:整数,长整数、浮点数和复数
java则有char,short,byte,int,long,float,double类型
2. 字符串
2.1. 字符串表示
Python中没有表示单个常量字符串类型的char类型,其可以用单引号‘ ’或双引号“ ”来表示一个字符串,也可以用三引号来表示一个多行字符串
Java中char表示单个字符,String表示一个字符串,常量字符或字符串用双引号“ ”表示
2.2. 多行字符串
Python在字符串末尾加上反斜杠(/)表示字符串在下一行继续
Java用加号(+)表示字符串在下一行继续
2.3. Python中其它的表示方法
Python中还有可以在字符串前加前缀r或R:表示自然字符串,即不对字符串做转移处理比java方便
Python可以加前缀u或U:表示unicode字符串
注意: Python 中的__init__()方法类似与Java中的构造函数,Java构造函数中的self默认存在,不需要在构造函数声明的时候进行显示指明,但是Python需要在__init__()函数中显示指明(但是ID调用时不用显示进行self传递)。
3. 操作符
Python中**表示幂计算,如果 X**y表示 Xy
Python中//表示整除,即商的整数部分
Python中~表示按位翻转,~x就是-(x+1)
4. 对象的序列化表示
Python中可以使用str()或repr()函数来实现对象的序列化
Java中通过toString()方法来实现对象的序列化
注意:序列化 (Serialization)将对象的状态信息转换为可以存储或传输的形式的过程。