TIOBE榜 TIOBE编程语言排行榜是编程语言流行趋势的一个指标,每个月更新,这份排行榜排名基于互联网有经验的程序员、课程和第三方厂商的数量。java
JAVA 目前使用最普遍的编程语言,第一个跨平台的语言, 在大型ERP软件\安卓APP开发\大型网站开发领域使用普遍python
PHP 使用最普遍的WEB开发语言,很是适合中小型网站开发,学习成本较低,开发效率高程序员
C\C++ 学习成本高,学习周期长,偏系统底层、在开发硬件驱动、嵌入式、游戏引擎开发等领域有广发的应用。web
PYTHON 使用领域几乎和JAVA同样普遍,但开发效率要高于JAVA,且学习成本较低,在科学预算\数据分析\网站开发\爬虫开发\云计算\自动化运维\自动化测试等领域优点明显shell
WEB开发 比较火的python web框架,支持异步高并发的Tornado框架,短小精悍的flask、bottle。编程
人工智能 python是对人工智能支持最好的语言。flask
云计算 目前最火的云计算框架openstack。架构
金融量化分析、自动化交易 python在金融分析、量化交易领域用的很是多。并发
爬虫 爬取网页和数据框架
自动化运维 运维必须掌握的语言
科学计算NASA早在97年就开始用python作科学计算,以后有了Numpy\SciPy\Matplohib\Enthought librarys等库,python愈来愈适合作科学运算和图形处理。
游戏开发python也能够作游戏开发
机器语言---汇编语言---高级语言
编译类: 将程序源码转成目标代码(机器语言),因此程序能够脱离其语言环境独立执行。程序执行效率高可是修改比较麻烦,只要修改源代码,必须从新生成执行文件。
如C、C++、Delphi等
解释类:将源代码实时的由解释器翻译成目标代码(机器语言)进行执行,并且不能生成独立的可执行的文件,程序运行不能脱离其解释器。
如Python、Java、PHP、Ruby等语言。
编译型优势:
a、程序执行时,再也不须要源代码不依赖语言环境,由于执行的是机器码文件
b、执行速度快,由于你的程序代码已经翻译成了是计筲机能够直接理解的机器语言。
缺点:
a、每次修改了源代码,须要从新编译,生成机器码文件b、跨平台性很差,不一样操做系统,调用底层的机器指令不一样,须要为不一样平台生成不一样的机器码文件
解释型
优势:a、天生跨平台,由于解释器已经作好了对不一样平台的交互处理,用户写的源代码不需再考虑平台差别性,可谓,一份源代码,全部平台均可直接执行
b、随时修改,马上见效,改完源代码后,直接运行看效果
缺点:
a、运行效率低,全部的代码均兼通过解释器边解释边执行,速度比编译型慢不少b、代码是明文
机器语言:优势是最底层,速度最快,缺点是最复杂,开发效率最低
汇编语言:优势是比较底层,速度最快,缺点是复杂,开发效率最低
高级语言
编译型语言执行速度快,不依赖语言环境,跨平台效率差解释型跨平台好,一份代码,处处使用,缺点是执行速度慢,依赖解释器运行
发明人Guido van Rossum
1989年圣诞节写出来的,创造出一种C和shell之间的,功能全面,易学易用的可拓展的语言。
1991年第一个编译器诞生,是用C语言写成的。1999年正式支持web开发
1994年增长 lamba ,map,filter and reduce
2000年python2.0解释器,加入内存回收机制,构成了如今的python语言架构的基础。
2004年python2.4解释器,同年目前最流行的的web框架Django诞生
2006年python2.5解释器发布
2008年python2.6解释器发布
2008年python3.0解释器发布
2010年 python2.7解释器发布
2009年python 3.1解释器发布
2011年python 3.2解释器发布
2012年python 3.3解释器发布
2014年python 3.4解释器发布
2014年11月宣布对python2.7的支持到2020年,而且再也不开发python2.8用户应该尽快使用python3.4及其以上版本。
2015年10月发布python 3.5解释器
2016年12月发布python 3.6解释器
Cpython:大多数人用的python解释器,官网下载的也是Cpython
ironpython:即IronPython 是一种在 NET 和 Mono 上实现的 Python 语言。
Jpython:java语言写的解释器。
pypython:pypy是对python进行动态编译一次,再次执行.
是表示一个数值或者状态的,把程序运算的中间结果临时存到内存里,已备后面的代码继续调用。
只能是字母、数字、下划线的任意组合
变量名的第一个字符不能是数字
keyword.kwlist = ['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']
a、驼峰体
age0of0nicholas = 18
b、下划线
age_of_nicholas = 18
变量名为中文
变量名过长
变量名词不达意
常量即不变的量,在python中没有一个专门的语法表明常量,程序员约定俗成用变量所有大写表明常量
PI = 3.14
代码注释用#
代码注释原则:不用所有加注释,只须要在本身以为重要或者很差理解的部分加注释便可,注释能够是中文或者英文,但绝对不要用拼音
整型即整数,在python3中再也不有长整型long,只有int
在python中加了引号的字符都被认为是字符串,单引号和双引号没有任何区别
单双引号的配合使用
msg = "I'm 18 years old !"
多行字符串能够用三引号
msg = '''my name is nicholas '''
字符串的拼接能够用+
字符串能够用乘法
name = "nicholas" v = name *10 print(v)
这里会输出10个nicholas
注意字符串的拼接只能是双方都是字符串,不能是数字或者其余类型
True /False
见博客[Python之路(第一篇):Python简介和基础]
见博客[Python之路(第一篇):Python简介和基础]
continue 结束当前循环,继续下一次循环
break 结束整个循环,执行循环体外面的语句
与其余语言不一样,python中还有while-else语句
while后面的else语句做用是,当while循环正常执行完,中间没有被break语句停止的话,就会执行else后面的语句,若是被停止,则else也不会被执行。
例子
count = 0 while count <= 5: count += 1 print("loop",count) else: print("循环正常执行完啦") print("-------out of while loop--------")
输出结果
loop 1 loop 2 loop 3 loop 4 loop 5 loop 6 循环正常执行完啦 -------out of while loop--------
分析:这里是先执行完while语句以后再次执行了else语句
例子2
count = 0 while count <= 5: count += 1 print("loop",count) break else: print("循环正常执行完啦") print("-------out of while loop--------")
输出结果
loop 1 -------out of while loop--------
分析:这里在while 语句中被break后,else中的语句也没有执行。
for-else与while-else相似,for循环正常执行完,中间没有被break语句停止的话,就会执行else后面的语句,若是被停止,则else也不会被执行。注意这里若是for循环语句中有return也会有break相似的效果
例子
li = [1,2,3,4,5] def find(): for i in li: if i == 5: print("找到5了") return "ok" else: print("没有找到") return "no" print(find())
输出结果
找到5了 ok
分析:这里for循环语句里if条件成立打印"找到5了",return出“ok”,以后会直接结束程序,不会继续执行else语句。
例子2
li = [1,2,3,4] def find(): for i in li: if i == 5: print("找到5了") return "ok" else: print("没有找到") return "no" print(find())
输出结果
没有找到 no
分析:这里for循环内if语句没有符合条件,return语句未能被执行到,因此for循环语句执行完以后执行了else语句。这里return的功能和break相似,即若是for循环被break或者return打断执行过程,那么后面的else语句也不会被执行,若是for循环没被打断则执行else语句。