1需要理解的一些概念
1、C语言编译完就是机器码,机器码可以直接在处理器上执行。
2、CPU可以直接读取机器码。
3、Python是用C写的。
4、Python解释器会把代码内容读到内存里,通过Python解释器翻译成字节码。
5、CPU不能直接读取字节码,需要把字节码转换成机器码
2.python的特点:优雅、明确、简单
1)简单、易学、免费开源
2)高层语言(使用Python编写程序时无需考虑如何管理程序使用的内存一类的底层细节)
3)解释性(可以直接从源代码运行。在计算机内部,python解释器把源代码转换为字节码的中间形式,然后再把它翻译成计算机使用的机器语言)
4)可移植性、可扩展性(部分程序可以使用其他语言编写,如c/c++)、可嵌入性(可以把Python嵌入到c/c++程序中,从而提供脚本功能)
5)面向对象(python既支持面向过程编程也支持面向对象编程)
缺点:运行速度慢、代码不能加密、线程不能利用多CPU问题
3.目前Python主要应用领域:
- 云计算: 云计算最火的语言, 典型应用OpenStack
- WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
- 科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
- 系统运维: 运维人员必备语言
- 金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测
- 图形GUI: PyQT, WxPython,TkInter
4.安装python包
链接:https://pan.baidu.com/s/1e7-tjKHTAxHDr6o-hfbbZg
提取码:zjxq
下载好后双击进入安装界面
安装成功
安装完后验证:Win+R --->cmd
在命令界面输入python回车,当出现如下界面表示成功,如要退出python交互式环境,输入exit(0)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
5.行和缩进
学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。
缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。
每一行都是一个语句,当语句以冒号 : 结束时,缩进的语句视为代码块
a = 100
if a>=0 :
print(a)
else:
print(-a)
6.字符编码
8个比特一个字节(8bit = 1byte),几个字节一个字符
x = b'ABC' 显示内容与 'ABC' 一样,但byte(字节)的每个字符都只占用一个字节
内存中用Unicode编码(统一编码),外存或传输用UTF-8编码
ord('A')------>65 字符----->整数表示
chr(66)------>'B' 编码------>对应的字符
用 Unicode 表示的str通过 encode() 编码为指定的byte以便于传输
反过来,从网络或外存读取的字节流(byte)把byte变为str,则
如果byte中只有一小部分无效字节,可传入 errors = 'ignore' 忽视
计算字符或字节数数 len('ABC') 或 len(b'ABC')
7.扩展Python
所有能被整合或导入其他Python脚本的代码,都可以称为扩展,可用纯Python、C和C++写扩展
作用:
1.添加额外的(非Python)功能
2性能瓶颈的效率提升,把代码放到扩展中,可提升性能
3.保持专有源代码私密