python历史
python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。
最新的TIOBE排行榜,Python赶超PHP占据第四!!!
Python可以应用于众多领域,如:数据分析、组件集成、网络服务、图像处理、数值计算和科学计算等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。互联网公司广泛使用Python来做的事一般有:自动化运维、自动化测试、大数据分析、爬虫、Web 等。
语言对比:
C语言: 代码编译得到 机器码 ,机器码在处理器上直接执行,每一条指令控制CPU工作
python语言:代码编译得到字节码 ,虚拟机执行字节码并转换成机器码再后在处理器上执行
缺点:python速度慢,效率低
优点:比c语言开发效率高
python详细执行过程参考:https://blog.csdn.net/helloxiaozhe/article/details/78104975
python种类:
- Cpython
Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。 - Jyhton
Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。 - IronPython
Python的C#实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似) - PyPy(特殊)
Python实现的Python,将Python的字节码字节码再编译成机器码。 - RubyPython、Brython ...
- Cpython
注意:PyPy,在Python的基础上对Python的字节码进一步处理,从而提升执行速度!但是不成熟
详见:https://baike.baidu.com/item/Python/407313?fr=aladdin
二、python环境
安装python
高大上的方法自行百Google
我选择了anaconda
注意,对于环境变量的配置,在安装anaconda时最好勾选上,没有勾选也可以自己配置
如果是选择的python官方提供的python,那么就配置安装路径到path变量中就OK!
更新python: Windows下卸载重装
对于Linux下的安装和更新参考:http://www.cnblogs.com/wupeiqi/articles/5433925.html
三、python基础1.第一句python
1 print('hello python')
python内部执行过程如下:
注意:文件后缀名可以任意,但是在导入模块时,如果不是py后缀名的文件会发生错误,所以以后只用py后缀名
2.两种执行方式
python解释器 py文件路径
python 命令进入解释器: 实时输入并获取结果
3.解释器路径
#!/usr/bin/env/python 只是在Linux下需要用到
在Linux下需要,并且写在代码第一行
1 #!/usr/bin/env python
2 # -*- coding:utf8 -*-
3
4
5 print('你好')
加了上述解释器路径就可以直接./python文件名来执行,如果不加,那么就要写python绝对路径来执行此目录下的某python文件
4.编码
# -*-coding:utf8 -*- 只是python2程序有中文时才加入,python3无需关注
ASCII ASCII码最多只能表示 256 个符号 只能表示美国人所使用的符号
Unicode (统一码、万国码、单一码) 所有语言
utf-8 对Unicode编码的压缩和优化 比Unicode更好 英文占一字节,汉语占三字节 节约空间
注意:现代计算机:内存编码采用Unicode,并不是只用Unicode
硬盘用utf-8
1 #!/usr/bin/env python
2 # -*- coding:utf8 -*-
3
4
5 print('你好')
对于这个程序里面含有中文,如果是python2的话就加那个编码,python3可以忽视
5.注释
单行:# 注释行
多行:
"""
注释区域
"""
1 """
2 n1 = input("请输入用户名:")
3 n2 = input("请输入密码:")
4
5
6 if n1 == "root" and n2 == "root!23":
7 print("登录成功")
8 else:
9 print("登录失败")
10 """
注意:不会因为注释而破坏了代码块的结构,因为注释不会执行
6.变量名
由数字、字母、下划线组成
注意:不能以数字开头
不能和关键字同名'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'exec', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'not', 'or', 'pass', 'print', 'raise', 'return', 'try', 'while', 'with', 'yield'
最好不要和python内置的东西(函数和类)重复
7.条件语句
1.if条件语句
if 条件:内部代码块内部代码块
else:print('....')
#例如
if 1 == 1:print("欢迎进入")print("欢迎进入")
else:print("欢迎进入")
2.if 支持嵌套
1 if 条件语句:
2 执行语句
3 if 条件语句:
4 执行语句
5 else:
6 执行语句
7 else:
8 执行语句
3.if-elif
1 inp=input('请输入数字')
2
3 if inp == 1:
4 执行语句
5 elif inp == 2:
6 执行语句
7 else:
8 执行语句
补充:pass ,当满足条件不想做出任何操作就可以写pass
8.基本数据类型
字符串(引号)
如:name = "python"
name = 'python'
name = '''python'''
name = """python"""
运算:加 乘
加法:将两个字符串加起来连接为新串 乘法:将当前字符串重复某个倍数
如:name = ‘abc’+'bcd' name = name*10
注意:不可混搭(用什么开始就用什么结束),但是可以包含,被包含的也就被解释为普通字符了,如:“py'th'on”
数字:a=666
运算:加 减 乘 除 取余 次方 取商
如:a3=a1+a2 a3=a1-a2 a3=a1*a2 a3=a1/a2 a3=a1%a2 a3=a1**a2 a3=a1//a2
9.循环
while 条件:
代码块
死循环
while 运算式结果为1:
执行代码块