PythonCPPJava的异同

1.python比较容易学习,语法很简单,融入了很多现代编程语言的特性。python的库非常丰富,可以迅速开发程序,无论是网站还是小游戏都非常方便。不过,python的脚本的运行效率较低,不适合对运行效率要求较高的程序。

2.Java的语法比较规则,采用严格的面向对象编程方法,同时有很多大型的开发框架,比较适合企业级应用。Java的学习曲线较长,不仅要学习语言相关的特性,还要面向对象的软件构造方法,在此之后要学习一些框架的使用方法。

3.C++不仅是C和java特点的结合。实际上C++是多范式编程语言。它不仅支持传统的面向过程编程,也支持面向对象编程,最初C++发明的时候就叫做C with class (带类的C),随着时间推移,C++又接受了泛形编程的思想,像STL库就是一个例子。C++的语法风格不一而同,大部分人在写C++的时候还是当作带类的C来使用,其实C++可以写出像python一样现代的风格。C++运行效率较高,同时能够比较容易地建立大型软件,适合对效率要求高的软件,比如机器学习中的神经网络,大型游戏编程等等。C++的内容非常复杂,同时语言经过了几十年的演化,所以学习起来难度较大,开发效率较低。

PythonJava

注释的形式

python#的形式

java:单行 //  多行 /*。。。。*/  说明书/**。。。。*/

字符的形式

python:没有char数据类型,单引号和双引号是一样的功能。

java:单引号用来修饰char类型的字符,双引号用来修饰string类型的字符串。

三书写的形式

python:末尾不需要加分号。

java:必须加分号,没有程序则提示错误。

四缩进

python:它的缩进十分的重要,由于没有大括号什么的,所以很多逻辑一定要有正确的缩进形式,否则会提示错误。

java:缩进不是那么特别严格,由于有括号的存在,但是为了代码的阅读性,还是要遵守符合规范的缩进形式。

五代码书写的格式

比如if elsewhilefor,函数的定义,继承的写法上,等等,有很多的不同,这些就得系统的学习python才可清晰的掌握,由于太多,在此不做陈列。

python中的self相当于java中的this

 类初始化的方式不同

python:用__init__方法对对象进行初始化。

java:用构造函数对对象进行初始化。

Java中 逻辑与和逻辑或分别用 & |表示
python中用 and or表示。java 中的else if 被改为elif

#java:

int age = 30;

if(age < 24){

System.out.println("--------");

}else if (age >= 24 && age < 30){

System.out.println("#########");

}else {

System.out.println("********");

}

#python:

age = 50

if(age <18) :

    print("--------")

elif age >= 18 and age <40 :

    print("#########")

else :

    print(" "********")

Pythonc++

一、原理方面

1、运行效率:C++ >> Python

Python代码和C++最终都会变成CPU指令来跑,但一般情况下,比如反转和合并两个字符串,Python最终转换出来的CPU指令会比C++ 多很多。

首先,Python东西比C++多,经过了更多层,Python中甚至连数字都是object !!!

其次,Python是解释执行的,和物理机CPU之间多了解释器这层,而C++是编译执行的,直接就是机器码,编译的时候编译器又可以进行一些优化。

所以运行效率上没得比。

2、开发效率:Python >> C++

Python一两句代码就搞定的东西,C++往往要写一大堆。用C++解析下Json你就明白了,很可能好几天过去了,你还在调bug,刚调好bug又内存泄漏了,再试试Python你会爽得不要不要的。

开发效率上,Python要比C++快很多,所以说:"人生苦短,我用Python"

二、应用方面

1、代码形式

缩进:在Python,用不同级别的缩进表示不同级别的代码块。

全局变量:在函数内部是可以访问到全局变量的,但直接修改就不行。如果想要修改,可以使用global 标识 a 为全局变量

循环:在Python中,是使用可迭代对象(如字符串、列表、元组、字典、文件等)来构成循环

举例:

if/else/elif, for/while, try/except内部变量的作用域

Python

对于Python而言,if/elif/else/ try/except for/while并不能改变其作用域。定义在他们之内的变量,外部还是可以访问。如下代码:

a = 2

if a == 2:

    b = 3

print b

上面的程序是能正确运行的。也就是说在 if 的外部也是能访问到变量b的。

C++

对于C++而言,定义在if/for/while里面的变量,只能在里面访问,外面是访问不到的。如下代码:

int a = 2;

if(2 == a)

{

    int b = 3;

}

cout<<b<<endl;

上面的程序会报错,外部是访问不到b的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章