python简介
一、python的由来:
python的创始人是吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。
python语言的设计哲学是优雅,明确,简单。
二、python的应用范围:
数据分析,系统编程,组件集成,网络服务,图像处理,数值计算和科学计算
目前业内的大型互联网公司都在使用python,如:Youtube,Dropbox,Quora,豆瓣,知乎,Googele,Yahoo!,Facebook,NASA,百度,腾讯,汽车之家,美团等。
python一般做的事情有:自动化运维、自动化测试、大数据分析、爬虫、Web等。
1. 编程语言的比较:
C,python, Java,C#
C语言:代码编译得到机器码,机器码在处理器上直接执行,每一条指令控制CPU运行
其他语言:代码编译得到字节码,虚拟机执行字节码并转换成机器码然后在处理器上执行
Python和C:
Python是由C开发而来
在使用方面:python的类库齐全并且使用简介,如果要实现同样功能,python10行代码可以解决,而C语言需要100行以上。
在速度方面:python的运行速度相较C较慢。
Python和Java、C#等
在使用方面:Linux原装Python,其他语言都没有;以上几门语言都有非常丰富的类库支持。
在速度方面:python在速度上略为逊色。
在后台开发方面,python执行效率低,开发效率高;java执行效率高,开发效率低。php多用于写网站页面,快速搭建,具有一定的局限性。
总结:python与其他语言没有本质的区别。补充:由于C语言(高级语言的背后都是C语言)与汇编偏向底层,不能直接拿到就用,需要学习底层知识,学习成本较高,投入时间较大,开发工作以后一定要学!!
2. 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 ...
3. python的环境:
编译型:一次性将所有程序编译成二进制文件
缺点:开发效率低,不能跨平台(系统不兼容)。
优点:运行速度快。
C,C++等。应用场景:运算
解释型:当程序执行时,一行一行解释。
优点:开发效率高,可以跨平台。
缺点:开发速度慢。
python,php,javascript等
python2与python3的区别:python2的默认编码方式是ASCII码,python3的默认编码方式是UTF-8。解决方式: 在文件的首行: #-*-encoding:utf-8 -*-
4. 变量:就是将一些运算的中间结果暂存到内存中,以便后续代码调用。
1. 必须由字母,数字,下划线任意组合,且不能数字开头。
2. 不能是python中的关键字。
包括: 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
3. 变量具有可描述性
4. 不能是中文。
5. 常量:
一直不变的量 如π
BIR_OF_CHINA = 1949
python中没有常量
6. 注释:
方便自己方便他人理解代码。单行注释使用 # 。多行注释使用'''被注释内容''', """被注释内容""" ''' ''' """ """
7.用户交互:使用iuput.
1. 等待输入。
2. 将你输入的内容赋值给了前面的变量。
3. input出来的数据类型全部是str。
1 name = input ('please input your name:') 2 age = input('please input your age:') 3 print (name, age)
8. 基础数据类型初始:
数字: int 12, 3, 45
+ - * / ** (幂) // (整除) % (取余)
ps: type()
字符串转化成数字: int(str) 条件:str必须是数字; 数字转化成字符串: str(int)
字符串: str,python当中凡是用引号引起来的都是字符串。
可以相加:字符串的拼接
可以相乘:str *int
bool值:布尔值 Ture False
print (100, type(100)) print ('100', type('100'))
示例: 将字符串命令转化为数字
1 score = int (input('please input the score:')) 2 3 if score > 100: 4 print('This does not exist, please confirm your score again') 5 elif score >= 90: 6 print('A') 7 elif score >= 80: 8 print('B') 9 elif score >= 60: 10 print('C') 11 elif score >= 40: 12 print('D') 13 else: 14 print('you can go to hell...')
运行结果:
9. if多层嵌套:
1 if 条件: 2 结果1 3 else: 4 结果2
1 # 多选条件,调用elif--或者 2 num = input ('please input a number:') 3 4 if num == '1': 5 print('apple') 6 elif num == '2': 7 print ('banana') 8 elif num == '3': 9 print ('watermelon') 10 else: 11 print('ADAS')
程序运行结果:
10. while循环:
无限循环结构:
1 while 条件1: 2 循环体
终止循环: 1,改变条件,使其不成立。
2, break
注意:遇到break,跳出循环; 遇到continue,结束本次循环,开始下次循环
continue简单示例1:
1 count = 1 2 while count < 20: 3 print (count) 4 continue 5 count = count + 1
运行结果:
注意: continue是结束本次循环,开始下次循环
continue示例2:
1 count = 0 2 while count <= 100: 3 count = count + 1 4 if count > 5 and count count < 95: 5 continue 6 print('loop', count) 7 print('---------out of while line--------')
运行结果:
使用break终止循环示例:
1 count = 1 2 while True: 3 print(count) 4 count = count + 1 5 if count > 100: 6 break
运行结果: