Python和Java的语法对比分析语法简洁上python的确完美胜出


Posted in Python onMay 10, 2019

Python是一种广泛使用的解释型、高级编程、通用型编程语言,由吉多·范罗苏姆创造,第一版发布于1991年。可以视之为一种改良(加入一些其他编程语言的优点,如面向对象)的LISP。Python的设计哲学强调代码的可读性和简洁的语法(尤其是使用空格缩进划分代码块,而非使用大括号或者关键词)。相比于C++或Java,Python让开发者能够用更少的代码表达想法。不管是小型还是大型程序,该语言都试图让程序的结构清晰明了。

Java是一种广泛使用的计算机编程语言,拥有跨平台、面向对象、泛型编程的特性,广泛应用于企业级Web应用开发和移动应用开发。Java编程语言的风格十分接近C++语言。继承了C++语言面向对象技术的核心,舍弃了容易引起错误的指针,以引用取代;移除了C++中的运算符重载和多重继承特性,用接口取代;增加垃圾回收器功能。在Java SE 1.5版本中引入了泛型编程、类型安全的枚举、不定长参数和自动装/拆箱特性。太阳微系统对Java语言的解释是:“Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言”。

那么Python和Java在语法上有什么区别呢,让我们通过几个生动的例子来一探究竟。

目标1:输出hello,world

Python版

print("hello,world")

Java版

public class HelloWorld { //这里的HelloWorld需要与文件名相同
public static void main(String[] args) {


System.out.println("hello,world");

}
}

目标2:获取键盘输入,并输出

Python版

name = input("请输入您的名字:")
print(name)

Java版

import java.util.Scanner;
public class inputstr {
  public static void main(String[] args) {
    System.out.println("请输入您的名字:");
    String name = new Scanner(System.in).next();
    System.out.println(name);
  }
}

目标3:输出1到10的随机一个数字

Python版

import random
print(random.randint(1,10))

Java版

import java.util.Random;
public class prandom {
  public static void main(String[] args) {
    System.out.println(new Random().nextInt(10)+1)
}
}

目标4:指定一个列表或数组,[51, 22, 93, 17, 77, 31, 44, 55, 20],请对其快速排序

Python版

def quicksort(lis):
  if len(lis) < 2:
    return lis
  mid = lis[len(lis)//2]
  lis.remove(mid)
  left, right = [], []
  for li in lis:
    if li >= mid:
      right.append(li)
    else:
      left.append(li)
  return quicksort(left) + [mid] + quicksort(right)
if __name__ == "__main__":
  li = [51, 22, 93, 17, 77, 31, 44, 55, 20]
  newl = quicksort(li)
  print(newl)

Java版

import java.util.ArrayList;
public class quickpractise {
  public static void main(String[] args) {
    int list[] = {51, 22, 93, 17, 77, 31, 44, 55, 20};
    ArrayList<Integer> lis = new ArrayList<>();
    for (int i=0;i<list.length;i++){
      lis.add(list[i]);
    }
    ArrayList<Integer> newl = quicksort(lis);
    System.out.println(newl);
  }
  public static ArrayList<Integer> quicksort(ArrayList<Integer> lis) {
    if (lis.size() < 2) {
      return lis;
    }
    int len = lis.size()/2;
    int mid = lis.get(len);
    lis.remove(len);
    ArrayList<Integer> left = new ArrayList<>();
    ArrayList<Integer> right = new ArrayList<>();
    for (int i=0;i<lis.size();i++){
      int a = lis.get(i);
      if (a>=mid){
        right.add(a);
      }
      else{
        left.add(a);
      }
    }
    ArrayList<Integer> left1 = quicksort(left);
    ArrayList<Integer> right1 = quicksort(right);
    left1.add(mid);
    for (int i=0;i<right1.size();i++){
      left1.add(right1.get(i));
    }
    return left1;
  }
}

最后总结一下,在Java中每使用一个变量都要定义类型,函数定义的时候如果有返回值还要把返回类型也要写上。python中定义列表很简洁不需要通过指定个数和内容来定义,Java中定义了个数以后是不能变的,如果需要可以变需要通过ArrayList<>来定义,类型也需要指定。总体感觉在同样的思路下,去完成一个代码,python的确完美胜出,正应了那句话:"Life is short,I use python"。

总结

以上所述是小编给大家介绍的Python和Java的语法对比分析语法简洁上python的确完美胜出,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
python列表与元组详解实例
Nov 01 Python
在Python中使用dict和set方法的教程
Apr 27 Python
python如何实现int函数的方法示例
Feb 19 Python
python矩阵转换为一维数组的实例
Jun 05 Python
python实现简单图片物体标注工具
Mar 18 Python
python 实现将文件或文件夹用相对路径打包为 tar.gz 文件的方法
Jun 10 Python
Python学习笔记之lambda表达式用法详解
Aug 08 Python
python计算导数并绘图的实例
Feb 29 Python
详解python中groupby函数通俗易懂
May 14 Python
matplotlib subplot绘制多个子图的方法示例
Jul 28 Python
Python通过递归函数输出嵌套列表元素
Oct 15 Python
Python 居然可以在 Excel 中画画你知道吗
Feb 15 Python
Python3列表内置方法大全及示例代码小结
May 10 #Python
详解python 爬取12306验证码
May 10 #Python
详解用python写一个抽奖程序
May 10 #Python
python实现小球弹跳效果
May 10 #Python
基于python实现百度翻译功能
May 09 #Python
python使用time、datetime返回工作日列表实例代码
May 09 #Python
python 对字典按照value进行排序的方法
May 09 #Python
You might like
php通过记录IP来防止表单重复提交方法分析
2014/12/16 PHP
php实现文件上传及头像预览功能
2017/01/15 PHP
ThinkPHP3.2框架自定义配置和加载用法示例
2018/06/14 PHP
PHP session垃圾回收机制实例分析
2019/06/28 PHP
jquery+CSS3实现淘宝移动网页菜单效果
2015/08/31 Javascript
微信小程序 解决请求服务器手机预览请求不到数据的方法
2017/01/04 Javascript
javascript容错处理代码(屏蔽js错误)
2017/01/20 Javascript
微信小程序 九宫格实例代码
2017/01/21 Javascript
浅谈JavaScript中的属性:如何遍历属性
2017/09/14 Javascript
基于VUE.JS的移动端框架Mint UI的使用
2017/10/11 Javascript
原生js实现仿window10系统日历效果的实例
2017/10/31 Javascript
用VueJS写一个Chrome浏览器插件的实现方法
2019/02/27 Javascript
JavaScript中变量提升机制示例详解
2019/12/27 Javascript
详解Typescript里的This的使用方法
2021/01/08 Javascript
[51:53]DOTA2-DPC中国联赛 正赛 RNG vs Dragon BO3 第二场 1月24日
2021/03/11 DOTA
使用PYTHON接收多播数据的代码
2012/03/01 Python
python实现log日志的示例代码
2018/04/28 Python
Python实现输入二叉树的先序和中序遍历,再输出后序遍历操作示例
2018/07/27 Python
让你Python到很爽的加速递归函数的装饰器
2019/05/26 Python
详解Django定时任务模块设计与实践
2019/07/24 Python
PyTorch之图像和Tensor填充的实例
2019/08/18 Python
Pandas —— resample()重采样和asfreq()频度转换方式
2020/02/26 Python
通过实例简单了解python yield使用方法
2020/08/06 Python
HTML5利用约束验证API来检查表单的输入数据的代码实例
2016/12/20 HTML / CSS
北美领先的智能产品购物网站:Wellbots
2018/06/11 全球购物
Omio俄罗斯:一次搜索公共汽车、火车和飞机的机票
2018/11/17 全球购物
会计专业毕业生自荐信范文
2013/12/20 职场文书
学生打架检讨书
2014/02/14 职场文书
初三学习决心书
2014/03/11 职场文书
企业消防安全责任书
2014/07/23 职场文书
公司委托书怎么写
2014/08/02 职场文书
党员演讲稿
2014/09/04 职场文书
学生实习证明范文
2014/09/28 职场文书
《牧场之国》教学反思
2016/02/22 职场文书
nginx 添加http_stub_status_module模块
2022/05/25 Servers
使用 CSS 构建强大且酷炫的粒子动画效果
2022/08/14 HTML / CSS