计算机:根据指令操作数据的设备 。 计算机的发展参照摩尔定律,表现为指数方式。
功能性——数据计算、输入输出处理、结果存储
可编程性——根据一系列指令自动地、可预测地、准确地完成操作者的意图
程序设计也称编程,程序设计语言是一种用于交互(交流)的人造语言。编程语言种类多(>600种),绝大部分不再使用。C语言诞生于1972年,第一个被广泛使用的编程语言,Python语言诞生于1990年,是流行最好用的编程语言。
python是由Guido创建。通用语言:普适的计算问题求解开发、图形运算、操作系统的文件处理等
强制可读性、较少的底层语法元素、多种编程方式、支持中文字符。不到C代码量的10% ,超过13万第三方库,跨操作系统平台(语法简洁、生态高产)
但涉及操作系统底层、计算机内存、计算机接口方面,需要底层的C语言去完成。C语言形成的代码经过封装形成Python的接口,以第三方库的形式或语句形式调用。
编程语言种类:机器语言、汇编语言、高级语言(前两个与CPU型号有关,后者与CPU型号无关,使用编译器,接近自然语言)、超级语言(粘性整合已有程序,庞大计算生态,python)
python计算生态=标准库+第三方库
标准库:随解释器直接安装到操作系统中的功能模块。第三方库:需经过安装才能使用的功能模块
库Library、包Package、模块Module,统称模块。
两种代码类型:
1、源代码:采用某种编程语言编写的计算机程序,人类可读(如result = 2+3)
2、目标代码:计算机可直接执行,人类不可读(专家除外,如11010010 00111011)
如何将人类编写的程序变成机器可以执行的目标代码呢???
两种程序执行方式:
1、编译(将源代码一次性转换成目标代码)类似英文翻译
2、解释(将源代码逐条转换成目标代码同时逐条运行的过程) 类似实时的同声传译
两种编程语言
1、静态语言:用编译执行的编程语言(C/C++语言、Java语言)编译器一次性生成目标代码,优化更充分,程序运行速度更快
2、脚本语言:用解释执行的编程语言(Python语言、JavaScript语言、PHP语言)执行程序时需要源代码,维护更灵活,跨多个操作系统平台。
两种编程方式:
1、交互式:对每个输入语句即时运行结果,适合语法练习
2、文件式:批量执行一组语句并运行结果,编程的主要方式
编程解决问题的步骤:
1、确定IPO(input输入、process处理--算法、output输出)明确计算部分及功能边界
2、编写程序:将计算求解的设计变成现实
3、程序调试:确保程序按照正确逻辑能正确运行
如何学编程?
掌握语法,熟悉基本概念和逻辑;结合程序结构,使用编程套路;多练习多实践,举一反三
IDE:集成开发环境。编写、调试和发布python程序的工具
python基本开发环境IDLE
python官方提供(python解释器+IDLE开发环境),适用于小规模程序开发(只要几十MB大小);功能丰富(编辑器+交互环境+标准库+库安装工具)
下载地址(python):www.python.org/downloads 或 www.python123.io/downloads
python高级开发环境VSCode(Visual Studio Code)
与Visual Studio同质量的专业级开发工具;跨平台免费工具;编辑器模式(轻量级、功能丰富、可扩展性强) 安装:第一步,安装IDLE环境;第二步,安装VSCode
下载地址:https://code.visualstudio.com (50MB)
PyCharm
社区版免费,简单集成度高,适合编写较复杂工程
下载地址:www.jetbrains.com/pycharm
Anaconda
开源免费 ,支持近800个第三方库 ,包含多个主流工具,适合数据计算领域开发,各类 Python 工具的集成平台。Anaconda中包含python,所以安装了Anaconda,就可以不用安装python了。(如Anaconda中python的idle位置 D:\Anaconda\set_up\Scripts\IDLE)
下载地址:https://www.continuum.io(只有最新版本,太高版本可能无法匹配深度学习框架)或清华镜像网址:https://mirrors.tuan.tsinghua.edu.cn/anaconda/archive/
Sublime Text:专门为程序员开发的第三方专用编程工具;有专业编程体验;多种编辑分格。不是集成开发工具,因为专业程序员编写程序质量相对较高,调试需求较低
Wing:公司维护,工具收费;调试功能丰富;版本控制,版本同步;适合多人共同开发