学python最重要的是_Python学习,要选哪个版本?

blog-ad-01.png

纵观各大编程语言在 2017 年的发展情况,我们会发现涌现出诸如 Go、Swift 这类后起之秀,而其中最为耀眼的当属 Python。之所以 Python 如此受捧,不仅仅是人工智能、数字科学领域的兴起,而且与其自身的特性必不可分,正应了“Life is short,you need Python!”。但与此同时,不少开发者开始纠结 Python 的入门究竟该从 2.x 还是 3.x 开始学起?

毕竟 Python 语言作者 Guido van Rossum 曾于 2014 年宣布 Python 2.7 支持时间延长到 2020 年。Python 2.7 是 2.x 系列的最后一个版本,它的继承者 Python 3.0 在 2008 年 12 月发布,但不兼容 2.x 系列。也就意味着 2020 年之前,对于 Python 2.x 会一直提供 bug 修正,但它却与 3.x 不兼容。 所以我们该如何抉择?又该如何快速着手呢?

Python 2.x vs Python 3.x

基于此,Semaphore 社区调查了 Python 在 Semaphore 的托管 CI 服务中构建应用程序的使用情况。据去年的调查结果显示,有 70% 以上的用户仍在使用 Python 2.7,Python 3 的使用率较低。而今年,Python 3 的使用出现了明显的上涨,涨幅约 8.2%。如下图所示:

b6821255-39af-4e57-afb1-8feff363363b.jpg

相较而言,使用 Python 3 的开发者更愿意进行版本更新。去年,Python 3.5 的使用率达到 60%,Python 3.4 的使用率占 30%。今年的调查数据显示,3.5 版和 3.4 版的使用率分别只占 34% 和 20%,有 35% 的用户已经开始使用 Python 3.6。

62eff716-684e-4e16-9768-0a966ef1b86e.jpg

根据 Python 2.7 和 Python 3 各版本的使用率对比图,我们可以看出 Python 3.x 版的用户群体正在迅速扩展:

895883b2-c596-4b1f-9fd0-9c99a4ad060f.jpg

针对大家始终纠结的 Python 2.x 或 Python 3.x,不少网友也给出了自己的建议:

nexcvon:Python 3 有很大改进,比 Python 2 更容易理解。 如果大家决定学 Python 2.x,建议当被 string bytes 搞晕时,了解一下 Python 3,再做决定。另外,Python 3 的库已经比较全了,不支持 Python 3 的,多数是不再维护的。

林灿斌:编程最重要的是编程思想,Python 3 和 Python 2 虽然不同,但是它的思想基本是共通的,只有少量的语法差异。而编程中,语法只是细枝末节的东西。当你学会了 Python 3,只要稍微花一点时间学习 Python 2 的语法,那么这两种语言也都学会了。而认识语法差距所花费的时间,一般也不会比大家在纠结学哪个版本所花的时间更多。

adv adj:Python 语言的最大优势并不是语言本身的特性,而是它拥有脚本语言中最丰富的第三方包(模块、库),这是其他任何语言都无法比拟的巨大优势。很多人学 Python 并不是因为 Python 适合开发什么软件或者工程,而是因为 Python 拥有某个非常适合他们工作相关领域的简单易用的工具包。所以,学 Python 2 还是 3 关键要考虑的是你所准备使用的模块是否支持 3.x。

黄欢:建议先学习 Python2.7, 随后再了解 Python 3.x 与 Python 2.7 的差异部分。

整体而言,基于以上数据,大多数开发者更倾向于 Python 3.x。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/575170.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ARX中实现实体的偏移

static AcDbObjectId OffsetEnty(const ACHAR* BlkName,AcDbObjectId entId,double OfsValue,AcDbDatabase *pDbCrtEntity:: pPurDb); //!(多段线特别处理) AcDbObjectId EditEntity::OffsetEnty(const ACHAR* BlkName,AcDbObjectId entId,do…

java中Date类、DateFormat及SimpleDateFormat简介

Date类: Date类表示日期和时间,精确到毫秒(千分之一秒)位于java.util.Date下。日期是可以计算的,其本质是利用毫秒值进行计算,任何一个时间点都可以转换为毫秒值,毫秒值表示一个瞬间。 时间原…

gettype获取类名_在TypeScript中运行时获取对象的类名

在TypeScript中运行时获取对象的类名是否可以使用typescript在运行时获取对象的类/类型名称?class MyClass{}var instance new MyClass();console.log(instance.????); // Should output "MyClass"Adam Mills asked 2019-04-11T03:14:30Z9个解决方案…

LeetCode-Maximal Rectangle-最大矩形

https://oj.leetcode.com/problems/maximal-rectangle/ 一堆0,1矩阵中计算出由1组成的长方形的最大面积。 使用了直方图求最大面积的算法。枚举每一行p,然后在将一行上的所有列看做朝i>p方向出发的直方图,然后在这个直方图上用栈存储递增序列的那个一…

cefsharp 加载网页慢_网站访问慢的排查方案(史上最详细)

说实话,比起网站打不开,网站访问慢更让人抓狂。因为造成网站访问慢的因素太多了,一般用户根本无从下手!任他千头万绪的问题,从以下三个方面入手,也能轻松破解访问慢的大难题 :响应时间、执行时间…

java中日历类:Calendar

Calendar日历类 该类为抽象类,将所有可能用到的时间信息封装为静态成员变量,方便获取时间属性,其位于java.util.Calendar, 其中的getInstance方法可以返回一个Calendar类的子类对象,可以直接使用次子类进行创建对象&am…

typescript语法高亮插件_vscode常用插件

插件介绍HTML Snippets > 初级H5代码片段及提示HTML CSS Support > 初级H5代码片段及提示Debugger for Chrome > 让 vscode 映射 chrome 的 debug功能,静态页面都可以用 vscode 来打断点调试jQuery Code Snippets > jquery 重度患者必须品,废…

cfree运行程序错误_C/C++程序调试和内存检测

程序出现错误很正常,一个优秀的程序员必须学会调试,发现错误并改正。减少程序错误最有效的方法是:在敲代码之前,多花点时间思考,如何构造程序,数据结构和算法,尽量把细节提前写下来,…

java中System类、String Builder类简介

System类: System类为系统类,此包位于java.lang.System下,可以获得与系统相关的信息或系统操作,如: public class SystemClass{public static void main(String[] args){// 1.System下有许多静态的方法,其…

session的removeattribute移除一个不存在的属性会怎么用_公认峡谷机制最完美,对线几乎无解,夏侯惇高端局为何火不起来?...

Hello各位亲爱的小伙伴们,大家好,我是沐辰。在王者荣耀中始终有这么一个说法:“夏侯惇是王者峡谷机制最完美的英雄”,当然这个可不是沐辰胡编乱造,而是策划在数年前就曾公开发表过的看法。从机制上来,夏侯惇…

python图标的演变_python day 22 CSS拾遗之箭头,目录,图标

lanxing4. CSS拾遗之箭头画法.up { border-top: 30px solid green; border-right: 30px solid transparent; border-bottom: 30px solid transparent; border-left: 30px solid transparent; display: inline-block; } .down { border-top: 30px solid transparent; border-rig…

PHP中生成UUID

一、什么是UUID 简单的说UUID就是一串全球唯一的(16进制)数字串。 UUID的全拼为“Universally Unique Identifier”,可以译为“通用唯一识别码”。UUID由开源软件基金会 (Open Software Foundation, OSF) 定义,是分布式计算环境 (Distributed Computing …

java中包装类介绍

包装类: 基本数据类型使用起来非常方便,但是没有对应的方法来操作这些基本类型的数据,我们只有通过一个类把基本类型的数据封装起来,并在类中定义一些方法,这个类就叫做包装类。 包装类对应基本数据类型中的四类八种…

岗位po是什么意思_面试时,面试官问你有什么优点和缺点?应该如何巧妙的回答?...

工作多年,被面试过很多次,也面试过很多人,其中有一次印象最深刻,这次我不是主面试官,经理要面试一个候选人,他就拉上了我,作为陪衬,用经理的话说就是撑撑场面, 所以问题的…

python新手入门课_Python基础视频12集入门课程

视频笔记:├─1简介与实验环境配置9│ Python基础.pptx│ Python简介.pptx│ 实验环境配置2-1.pdf│ 2.1简介与实验环境配置.mp4│ 请简述 Python 语言与 C 语言、 Java 语言的区别.txt│ 请简述使用 conda 管理 python 环境有哪些优势.txt│├─2编程模式与注释│ 你所认为的 …

java中Collection集合、Iterator迭代器接口、for each循环遍历集合或对象

Collection集合: 概念:集合是java中提供一种存储多个数据的容器;数组也是存储数据的容器,集合和数组的区别就是集合的长度可以改变,而数组的长度不可以改变;集合可以存储多种类型的对象数据,而数组只能存储…

工业镜头选型计算公式_变压器分接开关选型指南

如何选择变压器适用的分接开关型号?选型中又有哪些值得注意的事项呢?小编特别整理提炼了分接开关选型指南,让我们一起来看一下。分接开关的产品型号示例如下:型号中的各项参数和规格可通过以下步骤计算确定:1、确定调压…

icmp端口_pingtunnel搭建icmp隧道

说明pingtunnel可以将udp、tcp、sock5流量伪装成icmp传输,地址:https://github.com/esrrhs/pingtunnel/,详细说明和用法可参考官方说明。示例图客户端运行在攻击机,服务端运行在受害机。情况如下:通过pingtunnel搭建一…

node中使用短信验证功能(阿里云为例)

一、选择短信平台 短信平台有很多,这里我选择阿里云,详细步骤如下: 进入短信控制台,对要发送的短信格式进行配置,如果没有签名,需要申请签名后操作(注意:需要自己已有阿里云账号且实…

mysql 5.5数据库主从配置步骤详解

上次给大家介绍了mysql 5.1主从搭建配置教程,这次我们来实现mysql 5.5的主从复制,其实大体上配置是差不多的,只有点细微的差别. 系统:centos 5.x 需要的软件包:mysql-5.5.33.tar.gz 环境准备: 服务器a:192.168.10.151 (主) 服务器b:192.168.10.152 (从)1.安装前准备wget http:/…