[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开发也做了一些年头,也分享下自己看这个视频的感受,单论单个知识点课程本身 ...
随机推荐
- 《剑指offer》面试题11. 旋转数组的最小数字
问题描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转.输入一个递增排序的数组的一个旋转,输出旋转数组的最小元素.例如,数组 [3,4,5,1,2] 为 [1,2,3,4,5] 的 ...
- 《剑指offer》面试题38. 字符串的排列
问题描述 输入一个字符串,打印出该字符串中字符的所有排列. 你可以以任意顺序返回这个字符串数组,但里面不能有重复元素. 示例: 输入:s = "abc" 输出:["abc ...
- WPF使用MVVM(二)-命令绑定
WPF使用MVVM(二)-命令绑定 上一节已经介绍了WPF的属性绑定,这使得我们只需要指定界面的DataContext,然后就可以让界面绑定我们的属性数据呢. 但是上一节还遗留了一个问题就是我们的按钮 ...
- 【解决了一个小问题】gin框架中出现如下错误:"[GIN-debug] [WARNING] Headers were already written. Wanted to override status code 400 with 500"
POST到数据到一条gin框架的接口后,客户端收到400错误,并且返回了业务中返回的"decode json fail". 关键代码是: func report(c *gin.Co ...
- php的CI框架相关数据库操作
在使用之前首先应该配置数据库的参数,详见文件application/config/database.php,里面包含主机名,登陆用户名,登录密码,数据库名,编码信息等. 在配置成功后,可以简单的调用: ...
- 学习AJAX必知必会(1)~Ajax
一.ajax(Asynchronous JavaScript And XML,即异步的 JS 和 XML) 1.通过 AJAX 可以在浏览器中向服务器发送异步请求实现无刷新获取数据. 2.优势:无刷新 ...
- 推荐一个github国内访问加速神器GitHub520
一.介绍 对 GitHub 说"爱"太难了:访问慢.图片加载不出来. 注: 本项目还处于测试阶段,仅在本机测试通过,如有问题欢迎提 issues 本项目无需安装任何程序,通过修改本 ...
- 【Vulnhub靶场】EMPIRE: BREAKOUT
环境准备 下载靶机,导入到vmware里面,这应该不用教了吧 开机可以看到,他已经给出了靶机的IP地址,就不用我们自己去探测了 攻击机IP地址为:192.168.2.15 靶机IP地址为:192.16 ...
- 007 Linux 命令三剑客之-awk
01 一起来认识 awk! Linux 命令三剑客,sed.grep.awk. sed:擅长数据修改. grep:擅长数据查找定位. awk:擅长数据切片,数据格式化,功能最复杂. awk 更适合格式 ...
- 火爆的文字游戏你玩了吗?「GitHub 热点速览 v.22.06」
不知道你有没有被 Wordle 这款游戏刷屏,在本期热点速览的特推部分选了一个 React 编写的开源版本同你分享,而本次公众号摘要也是一个提示, 只不过这个只能盲猜了.别小瞧 Wordle 这个游戏 ...