Python基础
一、编程语言分类
1.1 机器语言
计算机能够理解的语言只有二进制语言也就是0/1组成的各种代码,此语言是最低级的语言,也是运行最快、跨平台性最好的语言,但开发效率极低。
#指令部份的示例 0000 代表 加载(LOAD) 0001 代表 存储(STORE) #暂存器部份的示例 0000 代表暂存器 A 0001 代表暂存器 B #集成示例 0000,0000,000000010000 代表 LOAD A, 16 0000,0001,000000000001 代表 LOAD B, 1 0001,0001,000000010000 代表 STORE B, 16 0001,0001,000000000001 代表 STORE B, 1[1]
1.2 汇编语言
汇编语言仅仅是用一个英文标签代表一组二进制指令,毫无疑问,比起机器语言,汇编语言是一种进步,但汇编语言的本质仍然是直接操作硬件,因此汇编语言仍是比较低级/底层的语言、贴近计算机硬件。
汇编的hello world,打印一句hello world, 需要写十多行,如下 ; hello.asm section .data ; 数据段声明 msg db "Hello, world!", 0xA ; 要输出的字符串 len equ $ - msg ; 字串长度 section .text ; 代码段声明 global _start ; 指定入口函数 _start: ; 在屏幕上显示一个字符串 mov edx, len ; 参数三:字符串长度 mov ecx, msg ; 参数二:要显示的字符串 mov ebx, 1 ; 参数一:文件描述符(stdout) mov eax, 4 ; 系统调用号(sys_write) int 0x80 ; 调用内核功能 ; 退出程序 mov ebx, 0 ; 参数一:退出代码 mov eax, 1 ; 系统调用号(sys_exit) int 0x80 ; 调用内核功能
1.3 高级语言
1.编译型(如C语言)
编译型语言需要一个翻译程序,在人类用人类语言按一定格式写完代码运行前,这个翻译程序会把代码全部翻译成二进制语言,然后再交给计算机运行。这样做,损失了一些运行速度(但执行效率依然很高)与跨平台性,但较于低级语言大大提高了开发效率(但由于应用程序一旦需要修改,必须先修改源代码,然后重新编译、生成新的目标文件才能执行,而在只有目标文件而没有源代码,修改会很不方便。所以开发效率低于解释型)。
2.解释型(如python)
解释型语言和编译型语言不同的地方在于,编译型语言先全部翻译再执行,而解释型语言边翻译边执行。这样做,较编译型语言提高了跨平台性、开发效率与可维护性,但牺牲了一些运行速度(其实远远小于IO延迟,所以没有啥影响)
二、Python介绍
谈及python,涉及两层意思,一层代表的是python这门语言的语法风格,另外一层代表的则是专门用来解释该语法风格的应用程序:python解释器。
python的创始人为吉多·范罗苏姆(Guido van Rossum)。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus,他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,语法能够像shell一样简洁,易学易用、可拓展性强,同时兼顾C的强大功能。于是Guido在1989年的圣诞节期间,开始编写能够解释Python语言语法的解释器。
Python崇尚优美、清晰、简单,是一个优秀并广泛使用的语言。最新的TIOBE排行榜https://www.tiobe.com/tiobe-index/,Python已飙升至世界第三。
Python可以应用于众多领域,如:人工智能、数据分析、爬虫、金融量化、云计算、WEB开发、自动化运维/测试、游戏开发、网络服务、图像处理等众多领域。目前业内几乎所有大中型互联网企业都在使用Python,如:Youtube、Dropbox、BT、Quora(中国知乎)、豆瓣、知乎、Google、Yahoo!、Facebook、NASA、百度、腾讯、汽车之家、美团等。
三、安装Python解释器
3.1解释器类型
CPython
它是python领域性能最好,应用最广泛的一款解释器,我们在后面提到的解释器指的都是Cpython解释器。
Jython
JPython解释器是用JAVA编写的python解释器,可以直接把Python代码编译成Java字节码并执行,它不但使基于java的项目之上嵌入python脚本成为可能,同时也可以将java程序引入到python程序之中。
Python
IPython是基于CPython之上的一个交互式解释器,也就是说,IPython只是在交互方式上有所增强,但是执行Python代码的功能和CPython是完全一样的。这就好比很多国产浏览器虽然外观不同,但内核其实都是调用了IE。
CPython用>>>作为提示符,而IPython用In [序号]:作为提示符。
PyPy
PyPy是Python开发者为了更好地Hack Python而用Python语言实现的Python解释器。PyPy提供了JIT编译器和沙盒功能,对Python代码进行动态编译(注意不是解释),因此运行速度比CPython还要快。
IronPython
IronPython和Jython类似,只不过IronPython是运行在微软.Net平台上的Python解释器,可以直接把Python代码编译成.Net的字节码。
3.2 安装CPython解释器
打开官网 https://www.python.org
点击download按钮
选择合适的操作系统
选择最近的版本下载或寻找历史版本
下载,点击安装程序,注意勾选下图选项
完成安装
3.3 确认安装成功
windows --> 运行 --> 输入cmd ,然后回车,弹出cmd程序,输入python,如果能进入交互环境 ,代表安装成功。
四、第一个Python程序
在3.3中的CMD界面中输入下面的代码,回车,观察运行结果
print('hello world !')
五、集成开发环境的安装(推荐使用Pycharm)
下载网址:https://www.jetbrains.com/pycharm/download/ 最好选择专业版下载(正版需付费,没钱的办法:https://www.bilibili.com/read/cv10060170/)
安装完成后注册,然后启动,会让你先创建一个项目,其实就是一个文件夹,我们以后的代码都存在这里面。
创建一个文件夹,方便管理文件
创建py文件test.py
在test.py中写代码,输入关键字的开头可以用tab键补全后续,并且会有代码的错误提示
六、注释
单行注释用# 多行注释用''' ''' #注释是很重要的,它可以解释代码,让别人看到你的代码时候能够理解你的思路,所以,写代码一定要加注释