精华内容
下载资源
问答
  • python的队列与栈 deque == Java中的ArrayDeque python中的 dict == Java中的HashMap python中的list == Java中的ArrayLiast python中的 OrderDict == Java中的LinkedHashMap python中的set == Java中的HashSet 现在...

    img

    python的队列与栈 deque == Java中的ArrayDeque

    python中的 dict == Java中的HashMap

    python中的list == Java中的ArrayLiast

    python中的 OrderDict == Java中的LinkedHashMap

    python中的set == Java中的HashSet

    现在我感觉set跟dict更像,,这两种数据结构,,都是快速查找有没有的。。

    注意,什么值才能是set与dict的key,能hash的值。

    使用list存储数据时,按索引访问元素很快,但是插入和删除元素就很慢了,因为list是线性存储,数据量大的时候,插入和删除效率很低。

    deque是为了高效实现插入和删除操作的双向列表,适合用于队列和栈:

    >>> from collections import deque
    >>> q = deque(['a', 'b', 'c'])
    >>> q.append('x')
    >>> q.appendleft('y')
    >>> q
    deque(['y', 'a', 'b', 'c', 'x'])
    

    deque除了实现list的append()pop()外,还支持appendleft()popleft(),这样就可以非常高效地往头部添加或删除元素。

    展开全文
  • 对比javapython对比

    2019-07-02 22:48:44
    对比java和python对比java和python2011年04月18日 1.难易度而言。python远远简单于java。 2.开发速度。Python远优于java 3.运行速度。java远优于标准python,pypy和cython可以追赶java,但是两者都没有成熟到可以...

    对比java和python

    对比java和python 
    2011年04月18日
      1.难易度而言。python远远简单于java。
      2.开发速度。Python远优于java
      3.运行速度。java远优于标准python,pypy和cython可以追赶java,但是两者都没有成熟到可以做项目的程度。
      4.可用资源。java一抓一大把,python很少很少,尤其是中文资源。
      5.稳定程度。python3和2不兼容,造成了一定程度上的混乱以及大批类库失效。java由于有企业在背后支持所以稳定的多。
      6.是否开源。python从开始就是完全开源的。Java由sun开发,但现在有GUN的Openjdk可用,所以不用担心。
      7.编译还是解释。两者都是解释型。
      我理解,C好比手动挡车(编译型语言),java和python(解释型语言)好比自动档车。跑的最快的车都是手动档,但是对开不好的人来说,开自动档反而更快些。
      Kno有一篇文章谈到选择编程语言,“先确定你的需求”,不要由语言的简单还是复杂去觉定。只有能够编写你真正认为有用的程式,才能获得满足感,学习才能继续。
      那么java和python分别适用于什么样的环境呢。由sourceforge.net可以看出:
      最著名,久经考验的普通应用程序,基本都是c++写的。例如emule,7-zip,WinSCP,FileZilla等等等。
      一部分由java开发,例如最有名的OpenOffice。
      python写的很少,如Pidgin,FireBird。
      开发语言(有多少个程式由此语言开发)的排行如下:
      # Java46,202
      # C++36,895
      # PHP30,048
      # C28,075
      # C#13,476
      # Python13,379
      # JavaScript11,285
      # Perl9,216
      # Unix Shell3,869
      # Delphi/Kylix3,548
      # Visual Basic3,186
      # Visual Basic .NET
      很多框架和类库也和应用软件一样在这个列表里,因此比较公平。
      由此可以看出,java不管在GNU还是商业领域都是应用最广的语言。C主要用于构建系统底层。c++和java用于构建中间应用层。如果资源足够,那么会选择c++开发,以求运行速度,否则会用java开发,以求开发速度。python在各方面都比java优秀,可谓次世代语言。可最受争议的是它的速度,纯python比java慢很多,以及背后没有商业支持,稳定性备受诟病。目前为止,python在商业层次上,主要作为一种胶水语言,粘合其他语言(主要是c/c++)的类库。在GNU领域,主要局限于小规模的应用和个人化应用。以及逆向工程(黑客)应用。
      为什么java在服务器端被大量应用,在客户端用的却比较少呢。难道服务器端用到的计算量反而少么。我认为这说明对比c++,java的速度还是可以接受的。无法被接受的是JRE平台,以及JRE平台启动时卡的那一会儿。我就曾经为此认为java写就的程式性能低下。
      python用户常常拿来说嘴的一点是:python并不慢,因为python运行时调用了大量c库,而c是很快的。反过来想想,这正反映了其胶水语言的事实,任何一种语言都可以调用c库,这么比较有价值么?假如一个库完全由python,那么它的运行效率...不说也罢。编程不能总是用别人的库啊。

    ----

    Python编程语言目前的使用中需要不断的学习。下面我们就详细的看看如何才能更好的进行相关知识的学习。最近我一直在看一个基于wxPython的GUI应用程序代码,大概45.5KLOC的左右,而且这还不包括它所用到的库(如Twisted)。

    代码是由那些对Python比较生疏的Java的开发者写的,所以它存在很严重的性能问题(如三十秒的启动时间)。在检查代码的时候,我发现他们写了很多在Java中能讲得通但是对Python编程语言来说去却是很难接受的东西。并不是因为“Python比Java慢”,而是因为在Python中有更方便的方法去完成同样的目标,甚至是在Java中不可能的事情。

    所以,令人难过的事就是这些家伙事倍功半,写的那些代码比本应合乎用Python编程语言实现的慢很多。下面,让我们来看一些例子:

    ◆Java中的静态方法不能翻译成Python的类方法。哦,当然,他多多少少也能产生同样的效果,但类方法的目的实际上是做一些通常在Java中甚至都不可能的事情(如继承一个非默认的默认函数)。Java静态方法惯用的翻译通常翻译成一个模块级的函数,而不是一个类方法或静态方法。(并且静态常量应该翻译成模块级常量.) 
    这不是性能上的问题,但是一个Python编程语言程序员如果想调用Foo.someMethod,他要是被迫采用像Java中Foo.Foo.someMethod的方式去做的话,那么他就会被逼疯的。有一点一定要注意:调用一个类方法需要一个额外的存储空间,而调用静态方法或函数就不需要这样.

    对了,还有就是这些Foo.Bar.Baz的属性链也不是自己就能数出来的.在Java中,这些带点的名称是有编译器来查找的,运行的时候并不会去考虑一共有多少.而在Python中,查找的过程是在运行时进行的,所以要包括每个点.(在Python中,要记住一点,"平铺的结构别嵌套的要好",尽管相对于从性能方面来说,可能它更多涉及的是"可读性"和"简单要比复杂好".)

    ◆要使用switch语句吗?Python编程语言将是一个哈希表,不是一堆if-then语句。要使用在Java中不是switch语句而且还有字符串参与了的一堆if-then语句吗?它将仍然是一个哈希表。CPython字典是用在我们所了解的领域中认为是最佳性能之一的哈希表来实现的。你自己所写的代码也不会比这个再好了,除非你是Guido、Tim Peters和Raymond Hettinger的私生子,而且还是遗传增强了的。

    ◆XML不是答案。它也不是一个问题。现在用正则表达式来解释Jamie Zawinski,“一些人,当他遇到一个问题的时候,就会想‘我知道,我要用XML.’那么他们就有两个问题了。”

    相对于在Java中来说这是个不同的情况,因为比起Java代码,XML是灵活而且有弹性的。但比起Python的代码来,XML就是一个船锚,一个累赘。在Python中,XML是用来协同工作的,而不是你的核心功能,因为你不需要那么做。在Java中,XML可能是你的救世主,因为它让你实现了特定领域的语言并且“不用编码”就提高你的应用程序的适应性。在Java中,避免编码是一个很大的优势,因为编码意味着重新编译。但在Python中,通常是,写代码比写XML更简单。还有就是Python处理代码要比处理XML快很多很多。(不仅仅是这个,你必须写XML处理代码,同时Python就已经为你写好了.)

    如果你是一个Java程序员,你并不能利用本能知觉来考虑你是否要在你的Python核心应用中使用XML作为一部分。如果你不是因为信息交互的原因去实现一个已经存在的XML标准或是建立某种输入、输出格式或者建立某种XML编辑器或处理工具,那么就不要这么做。根本不要去这么做。甚至连想都不要想。现在,丢掉那个XML模式然后把你的手解放出来吧!如果你的应用程序或者平台要被Python编程语言开发者使用,他们只会感谢你不要在他们的工作中添加使用XML的负担。

    (这里唯一的例外是如果你的客户(your target audience)确确实实因为某些原因而需要使用XML。就好像,他们拒绝学习Python但如果你使用XML他们就给你付钱,或者你打算给他们一个很棒的能编辑XML的GUI,还有就是这个XML的GUI是另一个人写的,同时你得到免费使用的权利。还有一些很少见的架构上的原因需要用到XML。相信我,它们不会应用到你的程序中去的。如果有疑问,对一个资深的Python开发员解释你的用例。或者,如果你脸皮厚而且不介意被人嘲笑的话,试试向一个Lisp程序解释你的程序为什么要用XML!)

    ◆Getter和setter是恶魔。我应该说它是恶魔,是魔鬼!Python编程语言对象不是Java Bean。不要写什么getter和setter,而是还把它们内置在“属性”里面。它直到你能证明你需要比一个简单访问复杂一点的功能时才有意义,要不然,不要写getter和setter。它们是CPU时间的浪费,更要紧的是,它们还是程序员宝贵时间的浪费。不仅仅对于写代码和测试的人,对于那些要阅读和理解它们的人也是。

    在Java中,你必须使用getter和setter,因为公共字段不允许你以后改变想法再去使用getter和setter。所以,在Java中你最好事先避开这些"家务杂事".在Python中,这样做很傻,因为你可以以一个普通特性开始并可以在任何时间改变你的想法,而不用影响到这个类的任何客户。所以不要写getter和setter方法。

    ◆代码重复在Java中通常来说就是一场不可避免的灾祸,你必须经常反复地写同一个方法而只有一点点的变化(通常是这是因为静态类型约束)。在Python中这样做是没有必要的也是不值得的(除了极少数一些特定的场合需要内联一些要求性能的函数)。如果你发现自己一遍一遍在写同样的代码而且变化很少,你就需要去学一下闭包。他们实际不并是那么可怕。

     

    这就是你要做的。你写了一个包含了函数的函数。这里内部的函数就是你要一遍遍写的函数的模版,但是在里面加入了针对不同情况的函数要使用变量。外部的函数需要刚刚提高的那种变量作为参数,并且将内部的函数作为结果返回。然后,每次你要写另一种略微不同的函数的时候,你只要调用这个外部的函数,并且把返回值赋给你要让“重复”函数出现的名字。现在,如果你需要改变这个工作方式,你只需要改变一个地方:这个模版。

    在我所看过的应用程序/平台中,只有一个很微不足道的程序使用了这个技术,它去掉了数百行重负的代码。实际上,因为开发者使用了特别的样板文件来为这个平台开发插件,所以这会节省很多很多第三方开发人员的代码,同时也使那些程序员要学习的东西变得简单了。

    这只是Java->Python编程语言思维方式转变的冰山一角而已,现在我能正确的转变而不用去钻研程序的细节。本质上,如果你曾经用过一段时间Java,而且对Python比较陌生,那么你不要太相信自己的本能。你的本能已经被Java调节,而不是Python。向后退一步来说,最重要的是不要再写这么多代码了。

    为了这样做,让自己觉得更加需要Python。假装好像Python是可以做任何你想做的魔棒,而你无须出一点力。问一下,“Python怎样解决我的问题?”还有“Python语言的哪个特点和我的问题最相似?”如果对于你需要的东西其实已经有了某种固定形式,那么你绝对会感到惊讶的。事实上,这种现象实在是太普遍了,甚至即使在很有经验的Python程序员中也会出现,以至于Python社区中给这种现象起了个名字。我们称之为“GUIDO的时间机器”,因为在我们自己还没有掌握它之前,通常看上去要得到我们所需要的东西好像那是唯一的方法。

    所以,如果你在使用Python编程语言时候不能感到比使用Java要至少多出10倍的生产力话,你就最好做一下改动,你是不是忘记使用time machine!(chances are good that you've been forgetting to use the time machine)(同时如果你还怀念你的Java IDE,你可以这样想:因为你写的Python程序比他所需要的要复杂得多.)

    转载于:https://www.cnblogs.com/kungfupanda/p/4601947.html

    展开全文
  • PythonJava都是目前被广泛使用的编程语言,一个是后起之秀,潜力无限;一个是行业经典,成熟稳定。而随着大数据和人工智能的发展,Python语言的上升趋势比较明显,在某些领域甚至已经超过了Java;从就业的角度来看...

    Python和Java都是目前被广泛使用的编程语言,一个是后起之秀,潜力无限;一个是行业经典,成熟稳定。而随着大数据和人工智能的发展,Python语言的上升趋势比较明显,在某些领域甚至已经超过了Java;从就业的角度来看,目前Java相关岗位和Python相关岗位招聘需求基本持平,但随着产业互联网的发展,大数据、人工智能等相关技术的陆续落地,Python的就业岗位已经被进一步释放,岗位需求开始超过Java,所以从就业前景来看,Python更占优势,未来更可期。

    Java语言目前主要的应用领域包括Web开发、后端服务开发、Android开发和大数据开发,但由于大数据开发目前正在发展,所以Java主要岗位需求集中在Web开发等目前占比相对较大的开发领域。经过多年的发展,目前已有大量技术团队在采用Java开发方案,所以相对来说就业也会更容易一些。

    Python语言在近几年大数据和人工智能等领域的带动下,得到了广泛的关注。虽然大数据和人工智能领域的开发需求还没有得到完全释放,但Python语言的结构简洁明了、学习简单易上手、开源性、丰富的库等优势越来越明显,所以从目前的就业岗位需求来看,Python已经开始超过Java,成为新一代的编程语言霸主。

    Java相比于Python,虽然资历更老,但从市场需求和应用范围上看,二者相差无几,Python有时甚至比Java更广泛。作为编程语言的元老,Java市场已经十分完善,Java人才趋于饱和,因此市场对于Java开发人员的薪资越来越低,需求越来越少,要求也越来越高。而由于近两年来人工智能、机器学习、大数据以及云计算等技术的兴起,Python发展势如破竹,很多企业开始布局Python。但市场Python相关开发人才紧缺,因此,就业形势和薪资待遇相比于同等资质的IT技术人员要强太多。

    因此,对于程序员来说,小编建议无论是Python还是Java,都应该系统认真地去学习,尤其是Python这门正在大放异彩的新语言,可以让程序员本身的技术能得到很大很及时的提升;而对于IT初学者们来说,Python语法更简单,语言更优美,更易入门,只要认真学习,掌握合适的方法,精通Python会更加容易。在大数据、人工智能爆发的时代,Python是集万千宠爱于一身。Python作为计算机语言,具有非常强大的功能,不仅可以完成一些高层任务,几乎是可以在所有的操作系统中灵活的运行。所以抓住这个时机,现在就开始学习Python吧!北京华清远见教育集团是一家拥有十五年历史的高端IT培训机构,在Python学科上拥有科学系统的学习路线、权威的师资和来自企业的真实项目供学员实训,学Python,就来华清远见吧!

    展开全文
  • PythonJava对比

    2019-11-07 12:02:09
    PythonJava对比Python的缺点Python的优点总结 Python的缺点 python可移植性弱于javapython代码依赖很多模块,模块和项目代码不在一起,且模块需要安装。java第三方库是以jar包的格式,存在于项目代码中,直接...

    Python的缺点

    • python可移植性弱于java, python代码依赖很多模块,模块和项目代码不在一起,且模块需要安装。java第三方库是以jar包的格式,存在于项目代码中,直接打包就可在java虚拟机上运行。
    • python动态语言,很多内容需要在运行时才能发现,开发代码的稳定性略微弱于java。需要更多的测试来弥补这个短板。但是个人觉得影响应该不是很大。
    • python多线程受到GIL(全局解释锁)的影响,不能发挥多CPU的优势,但是可以通过多进程的方式弥补。
    • python语言是解释型,效率低于C/C++, 也低于java语言。

    Python的优点

    • python语法简洁,开发效率高,测试效率略低。java语法更为严谨,相比python,在语法上就避免的许多python在运行时才可以发现的问题。
    • python支持函数式编程,一些体量小的程序更易编写。
    • python可以直接解释执行,相比java省去了编译的环节。但在大型项目上,一般还是会对python代码进行编译。
    • python有丰富的第三方库,统一的包管理,下载方便。java也有丰富的库,但是较为分散,缺少统一的包管理。

    总结

    在大型项目中python的开发并不比java容易。在较小程序方面python优势明显。总结来说,python和java不相上下,他们都在各自的应用场景中发挥重要作用。

    python更适合非专业程序员,这个非专业程序员可能是运维人员、人工智能研究人员(当然这些人也可以是很专业的程序员),原因如下:
    一门程序语言除了自身的语法本身,他还要与其他对象交互。这个对象可能是文件、excel文档、网络、远程主机、图形、动画等等。而这个交互就需要一些列的接口,也就是API。而python有统一的包管理工具pip,让python可以方便快速的获取到这些触及世界的能力。虽然Java也有很多API,但是需要自己去找。

    展开全文
  • 这个单位只有我一个人用Python,其他人都用Java开发;今年四月下旬,让我也用Java重构。说实话,虽然之前我负责过Android手机开发,but我基本不开发,我只负责管理和分析疑难杂症,很久没动手下场写代码了,Java最多...
  • Python vs Java直观对比

    2019-09-25 11:31:06
    从毕业开始做Java开发,至今差不多有十年了,相信很多朋友应该跟我一样也是做Java出身,刚学Python时候一直想知道PythonJava到底有哪些区别,搜索半天结果要么不够全面,要么不够直观,所以我就想怎样才能一目了然...
  • PythonJava都是目前被广泛使用的编程语言,一个是后起之秀,潜力无限;一个是行业经典,成熟稳定。而随着大数据和人工智能的发展,Python语言的上升趋势比较明显,在某些领域甚至已经超过了Java;从就业的角度来看...
  • Java Go python 运行速度对比系统环境System: CentOS Linux release 7.7.1908Memory: 2GCPU: 1 * Intel(R) Xeon(R) CPU E5-2682 v4 @ 2.50GHzJava: 1.8.0_131Python: Python 3.7.3Golang: go1.13.3 linux/amd64测试...
  • javapython对比

    千次阅读 2017-08-26 15:44:05
    对比javapython  1.难易度而言。python远远简单于java。  2.开发速度。Python远优于java  3.运行速度。java远优于标准python,pypy和cython可以追赶java,但是两者都没有成熟到可以做项目的程度。  4.可用资源...
  • JavaPython对比

    2021-02-24 16:18:18
    JavaPython 一直都是两种很火很强大的编程语言,那么他们的区别呢? 这里是我的一些总结,有些是参考别人的(在这里谢谢!!!) 区别:(推荐学习:Python视频教程 网址:...
  • pythonjava对比

    千次阅读 2018-04-08 15:30:27
    前言 语言都是相同的,只不过语言的设计者理念不同,python的哲学就是优雅简洁,很多优秀框架也是这种思想,即默认大于配置。程序员天职是为了解决问题。...pythonjava对比(我所知道的理解的,肯定...
  • pythonjava中的ThreadPoolExecutor简单使用对比pythonjava python java
  • Python是一种广泛使用的解释型、高级编程、通用型编程语言,由吉多·范罗苏姆创造,第一版发布于1991年。这篇文章主要介绍了PythonJava的语法对比,语法简洁上python的确完美胜出 ,需要的朋友可以参考下
  • PythonJava语言对比

    千次阅读 2015-04-05 14:58:19
    现在一直习惯于用SSH做WEB开发,但是最近愈来愈感觉对于小的项目工程,Java的SSH框架过于沉重,所以经过调研发现Python语言比较方便,所以最近把python语法看了一遍,故把PythonJava中异同做下对比。 1. 缩进 ...
  • pythonJava语法对比

    千次阅读 2018-12-05 22:22:02
    a = 1 #python中不需要分号结尾,python用缩进判断代码块 Python定义变量的时候不需要给出类型,直接定义即可,Python会自动判断变量类型。 String类型: java: String a = new String(); a = "123"; ...
  • python工资高还是java?这个问题困扰了很多IT从业者,这两种开发语言,目前在互联网上的需求量都比较大,就业薪资待遇都挺好的,那么,想从事IT编程工作选择学习哪个好呢?Java是一门资深的编程语言,普及率极高,...
  • PythonJava就业前景对比

    千次阅读 2018-08-15 15:14:54
    PythonJava这两大编程语言,很多人都喜欢拿来比较,一个是后起之秀,潜力无限;一个是行业经典,成熟稳定,对于想从事IT技术的人员来说,很难抉择,那么,PythonJava到底哪一个就业前景更好呢? Python在国外...
  • 5、六种主流编程语言C++、PYTHONJAVA对比
  • PythonJava 异常处理对比

    千次阅读 2017-07-01 13:43:42
    Python语言中也有自己的异常处理,下面我们先看下Java中的异常处理,然后再对比Python中的异常处理,其实它们都大同小异。java 中的异常处理我们不做过多介绍,只是为了和python的异常处理做对比,加深理解。一、....
  • 原标题:如何对比PythonJava,只需三分钟告诉你!JavaPython两门语言都是目前非常热门的语言,可谓北乔峰南慕容,二者不分上下,棋逢对手。但是对于初学者来说,非常困惑,因为时间和精力有限,上手必须要先学...
  • PythonJava都是很火的编程语言,对于想学习编程的人员来说,常常被这个问题所困扰:我是该学Python还是Java呢?想要解决这个问题,还需结合自身实际情况和两种语言的特点进行分析。以下是PythonJava的区别: ...
  • Pythonjava一样 需要配置环境变量 Pythonjava一样 可以用命令行执行 Python 的交互模式,是不用编译的。而java需要编译后执行。 例如python作为计算器 >>> tax = 12.5 / 100 >>> price = 100.50 >>> price...
  • 对比javapython

    千次阅读 2017-08-15 12:43:04
    对比javapython   1.难易度而言。python远远简单于java。  2.开发速度。Python远优于java  3.运行速度。java远优于标准python,pypy和cython可以追赶java,但是两者都没有成熟到可以做项目的程度。  4....
  • JavaPython对比学习1

    千次阅读 2017-08-12 12:00:18
    javapython都是面向对象的语言,但是各种都有不同的特点,本文从对比的角度去看,javapython3的相同和不同之处。 首先不同的是java是先编译后运行,java文件必选编译为class文件才可以运行,而不存在直接交互...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 62,947
精华内容 25,178
关键字:

python对比java

python 订阅
java 订阅