1.零基础的开始Python是什么?
起因:数据结构老师想要做一个爬虫小工具,学过一段时间python的我自告奋勇上了,然后出于带着班里同学一同进步的心思,我召集了几个对python完全没有过了解的同学一起开始边学边做。然后考虑到自己的博客计划,就打算记录一下整个学习的流程,希望对于看文章的你们有所帮助。
文章目录
前言
提示:从零基础到制作简单的爬虫小软件整个过程会涉及到非常多的知识点,我将会留下部分学习视频的链接,然后主要只记录需要用到的部分。
注意:我这里的零基础实际上是对编程有一定了解的人,当然,完完全全的新手也不影响学习,但会更加推荐在之后的学习中去做更多的扩展。
提示:以下是本篇文章正文内容,如果您发现了错误可以直接在评论区指出。
一、什么是python?
Python是一种跨平台的计算机程序设计语言。是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
上面这种说法可谓是不讲人话,面对新手这样讲肯定是不行的。那么什么是python呢?
我们知道,人与人之间交流靠的是语言。计算机之间也有交流,我们用我们的人类语言,汉语,英语。而计算机则靠它们的机器语言。这种语言是计算机的基础交流语言,对于计算机来讲师直接可以听懂的话,也就是直接的二进制指令。
#机器语言
用二进制代码0和1描述的指令称为机器指令,由于计算机内部是基于二进制指令工作的,所以机器语言是直接控制计算机硬件。
1.机器语言
用机器语言编写程序,编程人员要首先熟记所用计算机的全部指令代码以及代码的含义,然后在编写程序时,程序员得自己处理每条指令和每一数据的存储分配和输入输出,还得记住编程过程中每步所使用的工作单元处在何种状态。这是一件十分繁琐的工作。编写程序花费的时间往往是实际运行时间的几十倍或几百倍。而且,编出的程序全是些0和1的指令代码,直观性差,不便阅读和书写,还容易出错,且依赖于具体的计算机硬件型号,局限性很大。除了计算机生产厂家的专业人员外,绝大多数的程序员已经不再去学习机器语言了。
机器语言是被微处理器理解和使用的,存在有多至100000种机器语言的指令,下述是一些简单示例 #指令部份的示例 0000 代表 加载(LOAD) 0001 代表 存储(STORE) ... #暂存器部份的示例 0000 代表暂存器 A 0001 代表暂存器 B ... #存储器部份的示例 000000000000 代表地址为 0 的存储器 000000000001 代表地址为 1 的存储器 000000010000 代表地址为 16 的存储器 100000000000 代表地址为 2^11 的存储器 #集成示例 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.开发效率最低
3.跨平台性差
正如大家上面看到的,使用机器语言对计算机进行命令就好比——你的外教用一口流利地道的中国话教你。效率当然是最高的,但前提条件是你的外教学习过中国话。在开发角度上我们也就需要学习机器语言,想想那一堆的0101,应该没有誰会想去面对它。
于是人们为了更好的命令计算机,发明了汇编语言
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 ; 调用内核功能
汇编语言的特点
- 执行效率高 相对于机器语言,使用英文标签编写程序相对简单,执行效率高,但较之机器语言稍低
- 开发效率低:仍然是直接操作硬件,比起机器语言来说,复杂度稍低,但依旧居高不下,所以开发效率依旧较低
- 跨平台性差 同样依赖具体的硬件,跨平台性差
emmm,这个效果对于计算机来说,就相当于你的外教初学汉语时走了岔路,学的是粤语。而你是个东北汉子,这种情况下虽然你大差不差还是可以听懂,但效率差了许多。而从开发效率也就是对于我们来说,学习粤语仍然是一个比较困难的事情。于是乎,高级语言应运而生
3.高级语言
高级语言是站在人的角度,说人话,即用人类的字符去编写程序,而人类的字符是在向操作系统发送指令,而非直接操作硬件,所以高级语言是与操作系统打交道的,此处的高级指的是高层、开发者无需考虑硬件细节,因而开发效率可以得到极大的提升,但正因为高级语言离硬件较远,更贴近人类语言,人类可以理解,而计算机则需要通过翻译才能理解,所以执行效率会低于低级语言。
按照翻译的方式的不同,高级语言又分为两种:
1 编译型(如C语言):
类似谷歌翻译,是把程序所有代码编译成计算机能识别的二进制指令,之后操作系统会拿着编译好的二进制指令直接操作硬件
2 解释型(如python):
类似同声翻译,需要有一个解释器,解释器会读取程序代码,一边翻译一边执行
ps:混合型语言
Java是一类特殊的编程语言,Java程序也需要编译,但是却没有直接编译为机器语言,而是编译为字节码,
然后在Java虚拟机上以解释方式执行字节码。
二、python介绍
谈及python,涉及两层意思,一层代表的是python这门语言的语法风格,另外一层代表的则是专门用来解释该语法风格的应用程序:python解释器。
python的创始人为吉多·范罗苏姆(Guido van Rossum)。Python这个名字,来自Guido所挚爱的电视剧Monty Python’s Flying Circus,他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,语法能够像shell一样简洁,易学易用、可拓展性强,同时兼顾C的强大功能。于是Guido在1989年的圣诞节期间,开始编写能够解释Python语言语法的解释器。
2.安装python解释器
相信大家读到这里,也就明白了。Python其实就是一款解释性编程语言。而所谓的配置python环境,就是在将python的解释器下载下来,然后让我们在书写了python风格的编程语言后,可以通过解释器翻译为最基础的机器语言让电脑执行。
那么接下来我们就开始安装
1.下载
官网 https://www.python.org,按提示下载即可
2.测试
windows --> 运行 --> 输入cmd ,然后回车,弹出cmd程序,输入python,如果能进入交互环境 ,代表安装成功。