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的确完美胜出,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件! 如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
《魔兽世界》大逃杀!60人新游玩模式《强袭风暴》3月21日上线
暴雪近日发布了《魔兽世界》10.2.6 更新内容,新游玩模式《强袭风暴》即将于3月21 日在亚服上线,届时玩家将前往阿拉希高地展开一场 60 人大逃杀对战。
艾泽拉斯的冒险者已经征服了艾泽拉斯的大地及遥远的彼岸。他们在对抗世界上最致命的敌人时展现出过人的手腕,并且成功阻止终结宇宙等级的威胁。当他们在为即将于《魔兽世界》资料片《地心之战》中来袭的萨拉塔斯势力做战斗准备时,他们还需要在熟悉的阿拉希高地面对一个全新的敌人──那就是彼此。在《巨龙崛起》10.2.6 更新的《强袭风暴》中,玩家将会进入一个全新的海盗主题大逃杀式限时活动,其中包含极高的风险和史诗级的奖励。
《强袭风暴》不是普通的战场,作为一个独立于主游戏之外的活动,玩家可以用大逃杀的风格来体验《魔兽世界》,不分职业、不分装备(除了你在赛局中捡到的),光是技巧和战略的强弱之分就能决定出谁才是能坚持到最后的赢家。本次活动将会开放单人和双人模式,玩家在加入海盗主题的预赛大厅区域前,可以从强袭风暴角色画面新增好友。游玩游戏将可以累计名望轨迹,《巨龙崛起》和《魔兽世界:巫妖王之怒 经典版》的玩家都可以获得奖励。