[Python]小白入门时遇到的各种问题
Q:关于Python2.X和Python3.X各种版本有什么区别,小白应该选哪个?
A:
1、背景及简要介绍
Python 2 发布于 2000 年年底。 随着 Python 2 的不断发展,更多的功能被添加进来,包括将 Python 的类型和类在 Python 2.2 版本中统一为一层。
Python 3 被视为 Python 的未来,是目前正在开发中的语言版本。作为一项重大改革,Python 3 于 2008 年年末发布,以解决和修正以前语言版本的内在设计缺陷。Python 3 开发的重点是清理代码库并删除冗余,清晰地表明只能用一种方式来执行给定的任务。起初,Python 3的采用很缓慢,因为该语言不能向后兼容 Python 2,这就需要人们决定该使用哪个版本的语言。此外,许多封装库库只适用于 Python 2,但是由于 Python 3 背后的开发团队重申了终止对 Python 2 的支持,促使更多的库被移植到 Python 3 上来。从对 Python 3 提供支持的 Python 包的数量可以看出,Python 3 已得到越来越多的采用,在撰写本文时(2017.2.16),支持它的包就已包括了 339 个最受欢迎的 Python 包。
Python 2.7 于 2010 年 7 月 3 日发布,并计划作为 2.x 版本的最后一版。发布 Python 2.7 的目的在于,通过提供一些测量两者之间兼容性的措施,使 Python 2.x 的用户更容易将功能移植到 Python 3 上。Python 2.7 具有 Python 2 和 Python 3.0 之间的早期迭代版本的独特位置,它因为对许多具有鲁棒性的库具有兼容性,对于程序员而言一直是非常流行的选择。当我们今天讨论 Python 2 时,我们通常指的是 Python 2.7 版本,因为它是最常用的版本。然而,Python 2.7 被认为是一种遗留语言,且它的后续开发,包括现在最主要的 bug 修复,将在 2020 年完全停止。
2、具体差异
http://www.runoob.com/python/python-2x-3x.html
3、现状及建议
如果你希望只是在没有设定项目的情况下学习,你最可能考虑到 Python 3 将得到后续支持和开发,而 Python 2.7 不会。
如果您计划加入已有的项目,则你最有可能希望了解该团队正在使用的 Python 版本,还有如果项目使用的软件包支持不同版本,不同版本应该如何与旧版代码库进行交互,以及项目的实施细节。
如果你正开启了一个项目,你会想,调查哪些包可以使用,以及这些包和哪个版本的 Python 是兼容的。如上所述,尽管早期版本的 Python 3与为 Python 2 版本构建的库的兼容性较低,但是许多库已移植到 Python 3,或致力于在未来四年这样做。
随着越来越多的开发人员和团队的注意力集中在 Python 3 上,这种语言将变得更加精细,并与程序员不断变化的需求相一致,相较而言,对 Python 2.7 的支持将会越来越少。
参考:http://python.jobbole.com/87372/及http://www.runoob.com/python/python-2x-3x.html
Q:如何安装及配置python3.7?
A:
情形一:在Windows上安装(以Win10为例)
首先下载安装包
链接:https://pan.baidu.com/s/1mZhyJBEUegkim7cSa2KKoQ 密码:nt5c
双击安装包进行安装,勾选“Add Python 3.7 to PATH”(即自动配置环境变量,若不勾选则需要手动配置,这里不展开),点击“Install Now”即可安装到默认位置(一般为C盘)。若希望更改安装地址,可以选择“Customize Installation”,更改安装地址之后进行安装。
安装完毕之后运行Python检测是否安装成功:
打开命令提示符窗口,输入“python”后回车,若显示如下界面即安装成功,并进入Python交互式环境;否则安装不成功,很可能是在之前未勾选“Add Python 3.7 to PATH”,即未配置环境变量,需要手动配置,具体方法可以百度,建议重新安装并勾选“Add Python 3.7 to PATH”。
情形二:在Mac上安装(以MacOS 10.12.4为例)
Mac OS系统只要版本不低于10.9就自带Python2.7,要安装最新的Python3.7需要下载安装包:
链接:https://pan.baidu.com/s/1tRS_4YTTfzMZ5ZDLx1SRcg 密码:8j6a
双击运行并安装即可,安装完毕之后运行Python检测是否安装成功:
打开终端,输入“python3”,若显示如下界面即安装成功。
注意这里输入的是“python3”,是为了与系统自带的python2.7进行区别,如果输入的是“python”,则进入的就是python2.7的交互式环境了(如下)
Q:什么是Python解释器?
A:
Q:如何进行Python开发?
A:
方法一:
在Windows下使用命令提示符窗口(在Mac下使用终端),进入Python交互式环境,利用命令行运行官方版本解释器CPython。
具体方法见:(挖坑)
方法二:
使用IDEL进行交互式编程。这是在标准安装之后自带着装好的一个东西,大概可以理解为带图形界面的方法一。使用方法同方法一,打开后即进入交互式环境。
在Windows下从开始菜单就能找到
界面如下:
在Mac下的Launchpad里就有IDLE,界面也是基本一样的:
方法三:
使用一个文本编辑器来写代码,保存为xxx.py,再调用解释器来执行。
下面推荐两款适合写代码的文本编辑器:
1、Notepad++(只支持Windows)
这是我一直在用也很喜欢的一款编辑器,支持各种编程语言的高亮,有中文界面(啊对zyy这种英文渣来说很友好了(大雾))。非常强大,据说添加各种插件就可以当个简洁的IDE用了(挖坑)。
界面如下:
下载地址:https://notepad-plus-plus.org/download/v7.5.8.html
2、Sublime Text(支持Windows和Mac)
刚开始接触的一款编辑器,界面很漂亮,也支持各种编程语言的高亮,右上角的代码缩略图简直深得我心,不过貌似没有中文界面(QAQ)。据说添加各种插件也可以成为一个简洁的IDE(挖坑)。
界面如下:
下载地址:http://www.sublimetext.com/
方法四:
利用第三方IDE进行Python开发。
这里解释一下什么叫做IDE。IDE全称是Integrated Development Environment,即集成开发环境,是用来提供程序开发环境的应用程序,一般来说包含代码编辑器、编译器、调试器等工具。这个概念可能让小白觉得很懵逼,所以zyy找到了大佬做的解释图,大致解释了Python的原始开发环境、文本编辑器、第三方IDE之间的关系(如下图,其中PyScripter是一个第三方IDE):
Python的IDE也有不少,上图中的PyScripter只是其中一个,网上的对比非常多,比如:https://www.crifan.com/summary_common_python_ide_pyscripter_ulipad_eclipse_pydev_eric/
zyy决定尝试Eclipse+PyDev,安装及配置见:(挖坑)
参考:https://www.crifan.com/summary_common_python_ide_pyscripter_ulipad_eclipse_pydev_eric/ 及 https://www.crifan.com/files/doc/docbook/python_beginner_tutorial/release/htmls/ch04_python_dev_env.html#how_dev_python_in_window
[Python]小白入门时遇到的各种问题的更多相关文章
- 2018最新Python小白入门教程,30天学会Python
随着Python的技术的流行,Python在为人们带来工作与生活上带来了很多的便捷,因为Python简单,学起来快,也是不少新手程序员入门的首选语言.作为一名Python爱好者,我也想跟大家分享分享我 ...
- python小白入门
阅读目录 一python介绍 二安装python解释器 三第一个python程序 四变量 五用户与程序交互 六基本数据类型 七格式化输出 八基本运算符 九流程控制之if...else 十流程控制之wh ...
- Python小白入门题一——文件增删改
题目描述:用python对文件进行增(创建一个文件).删(删除一个文件).改(重命名)操作. 说明:新建了一个文件夹files存放新增的两个文件,随后这两个文件被批量重命名成“数字.txt”,之后这两 ...
- python小白入门之导入指定的模块
在python中导入模块是通过关键字import进行导入的,下面演示一下,模块的导入,指定模块别名,指定函数别名,调用模块中所有的函数运行结果: 1.模块的导入Study.py文件里面的内容是:形式 ...
- python小白入门基础(二:变量)
#变量:可以改变的量就是变量,实际上是由内存开辟的一块空间,临时存在内存中,以便后续代码使用.#作用:代指内存中某个地址中的内容. #1.变量的概念name = "王五"name ...
- python小白入门基础(一:注释)
# 注释:就是对代码的解释,方便大家阅读代码.注释后的代码程序不会执行.# 注释的分类:单行注释和多行注释# (1)单行注释# 在代码前面加个#字符print("hello world&qu ...
- python小白入门基础(三:整型)
# Number(int float str complex) #int 整型(正整数 0 负整数)intvar_1 = 100print(intvar_1)invar_2 = 0 print(inv ...
- python小白入门基础(四:浮点型和布尔型)
# Number (int float bool complex)# (1) float 浮点型 也就是小数# 表达方式一floatvar = 0.98print(floatvar)print(typ ...
- Django入门到进阶-更适合Python小白的系统课程
Django入门到进阶-更适合Python小白的系统课程 整个课程都看完了,这个课程的分享可以往下看,下面有链接,之前做java开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身 ...
随机推荐
- 【刷题-LeetCode】151 Reverse Words in a String
Reverse Words in a String Given an input string, reverse the string word by word. Example 1: Input: ...
- C# 同步 异步 回调 状态机 async await Demo
源码 https://gitee.com/s0611163/AsyncAwaitDemo 为什么会研究这个? 我们项目的客户端和服务端通信用的是WCF,我就想,能不能用异步的方式调用WCF服务呢?或者 ...
- golang中json包序列化与反序列化
package main import ( "encoding/json" "fmt" "reflect" ) type Info stru ...
- CSS基本语法(三)
目录 CSS基础语法(三) 十五.CSS定位 1.为什么要使用定位 2.定位组成 定位模式 静态定位 相对定位 绝对定位** 固定定位 粘性定位 边偏移 子绝父相 3.定位的叠放次序 4.拓展 绝对定 ...
- 科技爱好者周刊(第 176 期):中国法院承认 GPL 吗?
这里记录每周值得分享的科技内容,周五发布. 本杂志开源(GitHub: ruanyf/weekly),欢迎提交 issue,投稿或推荐科技内容. 周刊讨论区的帖子<谁在招人?>,提供大量程 ...
- hive DML 操作
数据导入 向表中装载数据(Load) 1.语法 load data [local] inpath '数据的 path' [overwrite] into table student [partitio ...
- 2022.02.05 DAY2
前言 今天陪老姐送对象去安庆了,上午还去了西风禅寺求了个签,第一次拿到中评签,看来今年还需要继续努力哈哈哈.一直到晚上才有时间去做点题目,今天依旧是leetcode. 题目 leetcode 1 两数 ...
- 最大公因数与最小公倍数-gcd&lcm
一.一些性质 \(gcd(a,b)=gcd(b,a)\) \(gcd(-a,b)=gcd(a,b)\) \(gcd(a,a)=|a|, gcd(a,0)=|a|\) \(gcd(a,1)=1\) \( ...
- js-reduce方法源码
// 数组中的reduce方法源码复写 //先说明一下reduce原理:总的一句,reduce方法主要是把数组遍历, //然后把数组的每个元素传入回调函数中,回调函数怎么处理,就会的到什么样的效果 A ...
- js源码-数组中的push()和unshift()方法的源码实现
人话不多,直接上代码,在代码中解析,不足之处请谅解: push() Array.prototype._push=function(...value){//在Array原型链上添加_push方法 for ...