ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

【python教程入门学习】Python 2.x和Python 3.x,初学者应如何选择?

2022-01-08 17:34:21  阅读:143  来源: 互联网

标签:教程 版本 Python 代码 选择 python 初学者 3.0


[Python]自发布以来,主要有 3 个版本,分别是:

  1. 1994 年发布的 Python 1.0 版本(已过时);
  2. 2000 年发布的 Python 2.0 版本,截止到 2019 年 3 月份,已经更新到 2.7.16;
  3. 2008 年发布的 Python 3.0 版本,截止到 2019 年 3 月份,已经更新到 3.7.3;

3 个版本中,Python 3.0 是一次重大的升级,为了避免引入历史包袱,Python 3.0 没有考虑与 Python 2.x 的兼容,这也就导致很长时间以来,Python 2.x 的用户不愿意升级到 Python 3.0。

除此之外,造成目前这种状况的另一个原因是,将现有应用从 Python 2.x 迁移到 Python 3.x 是一项不小的挑战。虽然有 2to3(后续会介绍)之类的工具可以进行代码的自动转换,但无法保证转换后的代码 100% 正确。而且,如果不做人工修改的话,转换后的代码性能可能还不如转换前。因此,将现有的复杂代码库迁移到 Python 3.x 上可能需要付出巨大的精力和成本,某些公司无法负担这些成本。

目前,根据统计显示,使用 Python 2.x 的开发者仍占 63.7%,而Python 3.x 的用户占 36.3%,由此可见,使用 Python 2.x 的用户还是占多数。在 2014 年,Python 创始人宣布,将 Python 2.7 支持时间延长到 2020 。

那么,初学者应该选择什么版本呢?本教程建议大家选择 Python 3.x 版本,理由有以下几点:

  • 使用 Python 3.x 已经是大势所趋
    目前,虽然使用 Python 2.x 的开发者居多,但使用 Python 3.x 的开发者正在迅速增加,如图 1 所示:

    Python 3.x 是大势所趋

    图 1 Python 3.x 是大势所趋

    另外,根据 PEP-404 这份文档,Python 2.x 版本将不会再发布 2.8 版本,且未来非常重要的项目(如 Django、Flask 和 Numpy)可能都将放弃对 2.x 的支持,仅支持 Python 3.x。因此,从长远来看,学习 Python 3.x 只有好处。对于新手小白想更轻松的学好Python基础,Python爬虫,web开发、大数据,数据分析,人工智能等技术,这里给大家分享系统教学资源,架下我尉(同英): 2763177065 【教程/工具/方法/解疑】

    本教程也是以 Python 3.x 来介绍 Python 编程,因此,为了同步,强烈建议初学者选择 Python 3.x。

  • Python 3.x在 Python 2.x 的基础上做了功能升级
    Python 3.x 对 Python 2.x 的标准库进行了一定程序的重新拆分和整合,比 Python 2.x 更容易理解,特别是在字符编码方面。Python 2.x 中对于中文字符串的支持性能不够好,需要编写单独的代码对中文进行处理,否则不能正确显示中文,而 Python 3.x 已经将该问题成功解决了。

  • Python 3.x 和 Python 2.x 思想基本是共通的
    Python 3.x 和 Python 2.x 思想基本上是共通的,只有少量的语法差别,学会的 Python 3.x,只要稍微花点时间学习 Python 2.x 的语法,即可灵活运用这两个不同版本了。

注意,选择 Python 3.x 也不是没有弊端,很多扩展库的发行总是会滞后于 Python 的发行版本,甚至目前还有很多库不支持 Python 3.x。

因此,在选择 Python 时,一定要先考虑清楚自己的学习目的,比如说,打算做哪方面的开发,此方向需要用法哪些扩展库,以及这些扩展库支持的最高 Python 版本等,明确这些问题后,再选择适合自己的版本。

关于 Python 3.x 和 Python 2.x 具体的区别,可阅读《[Python 3 和 Python 2 区别]》一节。

标签:教程,版本,Python,代码,选择,python,初学者,3.0
来源: https://blog.csdn.net/zihong521/article/details/122383290

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有