Python是一种什么语言?
Python是一种计算机程序设计语言。你可能已经听说过很多种流行的编程语言,比如非常难学的C语言,非常流行的Java语言,适合初学者的Basic语言,适合网页编程的Java语言等,Python是他们其中的一种。
首先,我们普及一下编程语言的基础知识。用任何编程语言来开发程序,都是为了让计算机干活,比如下载一个MP3,编写一个文档等,而计算机干活的CPU只认识机器指令,所以,尽管不同的编程语言差异极大,最后都得“翻译”成CPU可以执行的机器指令。而不同的编程语言,干同一个活,编写的代码量,差距也很大。
比如,完成同一个任务,C语言要写1000行代码,Java只需要写100行,而Python可能只要20行。
所以Python是一种相当高级的语言。
学习Python难吗?
是不是越低级的程序越难学,越高级的程序越简单?
表面上来说,是的。
但是,在非常高的抽象计算中,高级的Python程序设计也是非常难学的,所以,高级程序语言不等于简单。
但是,对于初学者和完成普通任务,Python语言是非常简单易用的。
用Python可以做什么?
可以做日常任务,比如自动备份你的MP3;
可以做网站,很多著名的网站像知乎、YouTube就是Python写的;
可以做网络游戏的后台,很多在线游戏的后台都是Python开发的。
总之就是能干很多很多事啦!
Python当然也有不能干的事情,
比如写操作系统,这个只能用C语言写;
写手机应用,只能用Objective-C(针对iPhone)和Java(针对Android);
写3D游戏,最好用C或C++。
许多大型网站就是用Python开发的,例如YouTube、Instagram,还有国内的豆瓣。
很多大公司,包括Google、Yahoo等,甚至NASA(美国航空航天局)都大量地使用Python。
如果我是小白,我满足什么条件可以学Python呢?
――会使用电脑,但从来没写过程序;
――还记得初中数学学的方程式和一点点代数知识;
――想从编程小白变成专业的软件架构师;
怎样才能在python界占有一席之地呢?
除了上述的三条,还要有:
――4个月早上9:00到晚上10:30全力以赴不间断学习的毅力
――不骄不躁不退缩不认输的决心
如果我是小白,学Python要准备什么呢?
学习Python必不可少的一部肯定是工具,一种是编码器,一种是解释器:
编码器就是Python。目前,Python有两个版本,一个是2.x版,一个是3.x版,这两个版本是不兼容的,因为现在Python正在朝着3.x版本进化,在进化过程中,大量的针对2.x版本的代码要修改后才能运行,所以,目前有许多第三方库还暂时无法在3.x上使用。
IDE工具。IDE集成开发环境(简称IDE)软件是用于程序开发环境的应用程序,一般包括代码编辑器、编译器、调试器和图形用户界面工具。
常见使用的工具是:
Pycharm: PyCharm是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。
IDLE: Idle 是一个纯Python 下使用 Tkinter 编写的相当基本的 IDE。
Ipython: ipython 是一个python 的交互式 shell,比默认的pythonshell 好用得多。
学Python后到底能干什么?
运维、web开发、应用开发、大数据、数据挖掘、科学计算、机器学习、人工智能、自然语言处理……还可以写很长很长……
python2与python3 的选择:
1. print不再是语句,而是函数,比如原来是 print 'abc' 现在是 print('abc')但是 python2.6+ 可以使用 from __future__ import print_function 来实现相同功能
2. 在Python 3中,没有旧式类,只有新式类,也就是说不用再像这样 class Foobar(object): pass 显式地子类化object但是最好还是加上. 主要区别在于 old-style 是 classtype 类型而 new-style 是 type类型
3. 原来1/2(两个整数相除)结果是0,现在是0.5了python 2.2+ 以上都可以使用 from __future__ import division 实现改特性, 同时注意 // 取代了之前的 / 运算
4. 新的字符串格式化方法format取代%错误, 从 python2.6+ 开始已经在str和unicode中有该方法, 同时 python3依然支持 % 算符
5. xrange重命名为range同时更改的还有一系列内置函数及方法, 都返回迭代器对象, 而不是列表或者 元组, 比如 filter, map, dict.items 等
6. !=取代 python2 也很少有人用 所以不算什么修改
7. long重命名为int不完全对, python3 彻底废弃了 long+int 双整数实现的方法, 统一为 int , 支持高精度整数运算
8. except Exception, e变成except (Exception) as e只有 python2.5 及以下版本不支持该语法. python2.6 是支持的. 不算新东西
9. exec变成函数类似 print() 的变化, 之前是语句.
简单补充下*
主要是类库的变化, 组织结构变了些. 但功能没变. urlparse - > urllib.parse 这样的变化* 最核心的变化它没有说, 对 bytes 和 原生 UNICODE 字符串的支持, 删除了 unicode 对象, str 为原生 unicode 字符串, bytes 替代了之前的 str 这个是最核心的.* 其它... 貌似不怎么重要了.
领取专属 10元无门槛券
私享最新 技术干货