干货福利,第一时间送达
简短说明
接昨日文章 “数据管道”公众号内容初步调整计划,内含福利!,现阶段开始LearingPython计划,预计打卡时间为15天,时间充足的情况下争取次条推送整理的福利资源。由于公众号开通时间较晚,没有留言功能,有任何问题欢迎大家在后台私信我,或者加微信沟通交流。
本节目录
1、 计算机硬件架构
2、 编辑器、编译器、解释器
3、 程序逻辑、程序错误、程序调试
4、 本节关键术语
计算机硬件架构
在开始学习用Python去开发软件、数据分析等之前,我们需要学习一点关于计算机硬件架构的知识。更底层的角度去学习编程,从内到外,可以让自己对Python程序如何运行有更深的理解。
微计算机硬件架构:
解释:
中央处理器(cpu):这一部分相当于计算机的大脑,不断的更新“下一步要做什么”这样的指令。如果你的电脑工作频率是3.0千兆赫,这意味着cpu会问"下一步呢?“每秒30亿次。主频越高意味着电脑工作越快,当然就越贵了。
主存(内存条):存储cpu紧急需要的信息,工作速度也非常快,但是,当计算机关闭时,存储在主存中的信息就会消失。
辅助存储器(硬盘等):存储一些相对不是那么紧急的信息,比如一部电影。工作速度相对较慢,但计算机关闭时,存在硬盘的内容不会消失。
输入输出设备:很好理解,对应电脑屏幕,键盘,鼠标,麦克风,扬声器等。
网络:现在,大多数计算机也通过网络连接来检索信息。从某种意义上说,网络是一种较慢的、有时不可靠的辅助存储器。
编程的“你”在计算机哪个部分呢?
你需要回答cpu的“下一步是什么?”的问题。因此,你必须提前写下你的“指令”。我们把这些存储的“指令”称为一个程序,把这些指令写下来,使这些指令成为正确的编程。
编辑器、解释器、编译器
Python是一种高级语言,高级语言更多的是面向人的理解。而中央处理器(cpu)中的实际硬件不理解这些高级语言,它只能识别低级语言(机器语言,汇编语言),机器语言是一堆001101010101(二进制文件),表面看起来机器语言只是一堆0和1,但是它的语法甚至比Python更复杂。(本科学过微机原理的应该知道)。
所以很少有程序员写过机器语言。相反,通过各种“翻译器”,以允许程序员使用Python或C++等高级语言进行编写,这些“翻译器”将程序转换为机器语言,以便由cpu实际执行。
这些编程语言“翻译器”可分为两大类:
编译器(Compiler)
解释器(Interpreter)
区别:
编译器是把源程序的每一条语句都编译成机器语言,并保存成二进制文件,这样运行时计算机可以直接以机器语言来运行此程序,速度很快。
而解释器则是只在执行程序时,才一条一条的解释成机器语言给计算机来执行,所以运行速度是不如编译后的程序运行的快的.。
图解Python程序运行:
在Python代码开始处理之前,Python还会执行一些步骤。确切的说:
第一步是编译成所谓的“字节码”(.pyc文件)
第二步是转发到所谓的“虚拟机(PVM)”中
更多内容请阅读:《Learning Python 4th》第二章“Python如何运行程序”。这本书在公众号文章分享过中英文福利链接:面试必备之Python深、浅拷贝。
编辑器:
我们不能再每次运行一些程序之前,都要在Python解释器提示符(>>>)下输入我们的程序,所以必须把它们保存为文件(.py)。所以要创建我们的Python源文件,需要一个可以输入并保存他们的编辑软件,也就是编辑器。
主流编辑器:
Pycharm
Vscode
Anaconda
推荐:
做数据科学领域直接安装Anaconda即可(内部已经安装好numpy pandas matplotlib scipy seaborn等很多数据科学的工具包),内置Jupyter Notebook非常好用。完美的结合一边用Markdown做笔记,一边编程锻炼。
利用Pycharm虚拟环境避免包冲突,(不同项目之间安装的环境互不干扰)。
Vscode师兄们在用,没用过,感觉应该也不错。
本人主要就是用Pycharm + Anaconda
程序逻辑、程序错误、程序调试
程序逻辑(不同编程语言通用):
输入:可能是来之不同的文件(CSV,XLSX,TXT等)。
顺序执行:按照在脚本中程序应该有的逻辑顺序依次执行语句。
条件执行:检查某些条件,然后执行或跳过一系列语句。
重复执行:重复执行一组语句,通常带有一些变化。
代码复用:对于一些经常使用的脚步可以保存起来,下次直接调用该模块。
输出:对应着输入,在屏幕上显示程序的结果,或者将结果存储在文件中。
程序错误:
可按类型分成三种程序错误:
Syntax Errors(语法错误):
这种错误是最容易犯也是最容易修复的错误,语法错误意味着程序违反了Python的“语法”规则。比如你把变量声明成一个Python已有的保留字等等。
Logic errors (逻辑错误):
逻辑错误是指程序有良好的语法,但是语句的顺序有错误,或者语句之间的关系有错误。
例子,“从你的水瓶里喝点东西,把它放在背包里,走到图书馆,然后把瓶盖放回去。”
Semantic errors (语义错误):
语义错误是程序在语法上是完美的,顺序是正确的,但它没有做你想让它做的事情。比如你想输出2,结果输出1。
程序调试:
DeBUG是在代码中查找错误原因的过程。当调试一个程序的时候,特别是当你在处理一个难处理的BUG的时候,有四件事可以尝试:
重读:检查代码,将其读给自己听,并检查它是否表达了想要表达的意思
运行:通过更改和运行不同的版本进行试验。通常,如果程序的正确位置显示了正确的内容,那么问题就会变得很明显。
反思:看看是什么错误类型,是语法错误还是逻辑错误还是结果不对,从报错信息中找内容
撤退:实在找不到哪里出错就不断撤回写好的代码,然后在不断运行,找到那个结果输出正确的逻辑行。
本节核心术语
计算机硬件架构
高级语言、低级语言
解释器、编译器、编辑器
机器码、二进制文件
错误调试
参考:
www.py4e.com
《Learning Python 4th》
总结
以上是内存溢出为你收集整理的从硬件架构到编程逻辑,Python入门打卡。全部内容,希望文章能够帮你解决从硬件架构到编程逻辑,Python入门打卡。所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)