计算机基础
一、计算机的介绍
1.什么是编程语言?
语言是一个事物与另一个事物沟通的介质
编程语言是程序员与计算机沟通的介质
2.什么是编程?
编程就是程序按照某种编程语法规范将自己想要让计算机做的事情表达出来
表达的结果就是程序,程序就是一系列的文件
3.为什么要编程?
在编程的过程中,计算机就像是人的奴隶
我们编程的目的就是为了让计算机代替人类去工作,从而解放人力
4.计算机硬件基础
五大组成部分:
控制器:指挥系统
运算符:数学运算+逻辑运算
存储器:存取数据
内存:
优点:存取速度快
缺点:断电数据就会全部丢失
硬盘:
优点:断电后数据也会保留下来,不会丢失
缺点:存取速度远远慢于内存
磁带:现在已经淘汰了,被U盘,移动磁盘替代了
输入设备:键盘,鼠标看见,摄像头,扫描仪等
输出设备:显示器,打印机,音响等
CPU=控制器+运算器
内存相当于人的记忆
外存/硬盘相当于我们的记事本,书本
与运行程序有关的三大核心硬件:
CPU
内存
优点:存取速度快
缺点:断电数据会丢失
硬盘
优点:断电后数据不会丢失,而是保存下来了
缺点:存取速度没有内存的快
运行一个程序经历过程:
代码由硬盘加载内存,然后CPU去内存中读取指令然后执行指令
存储器:
BIOS:basic input output system
5.操作系统(32位,64位)
操作系统本质就是一个软件,该软件的功能是专门用来帮我们控制硬件的
操作系统位于计算机硬件与软件之间,用于协调、管理、控制计算机硬件资源
32位的操作系统只能运行32位的应用程序
64位的操作系统可以运行32位的应用程序,但这样就没有发挥出64位的性能
操作系统的两大功能:
1.将复杂的硬件操作封装成简单的功能提供给用户、应用程序使用
2.将多个任务对硬件的竞争变得有序
一个完整的计算机系统应该分成三部分:
应用软件
操作系统
计算机硬件
二、编程语言的介绍:
1.编程语言
1.机器语言:直接用二进制编程,它直接控制硬件,需要掌握硬件的操作细节
优点:执行效率高
缺点:开发效率低
2.汇编语言:用英文标签取代二进制指令去编写程序,直接控制硬件,需要掌握硬件的操作细节
优点:开发效率比机器语言高
缺点:仍然没有改变直接操作硬件的本质,执行效率高,但不如机器语言高
3.高级语言:直接用人类的语言去编写程序,不再需要掌握硬件的操作细节
编译型C:类似于浏览器返回的内容,经过一次翻译,以后可以直接拿着翻译的结果去执行
编译工具:编译器
优点:执行效率比解释器要高
缺点: 开发效率低于解释型
解释型Python:类似于同声传译,翻译官相当于解释器
优点:开发效率高于编译型
缺点:执行效率低于编译型
执行效率由高到低:机器->汇编->编译型->解释型
开发效率由高到低:解释型->编译型->汇编->机器
2、安装python解释器,实现多版本共存
设置环境变量PATH
3、运行python程序的两种方式:
方式一:交互式:
优点:
输入一行代码立刻返回结果
缺点:
无法永久保存代码
方式二(命令行):python3 D:\test.txt
优点:以文件的方式将代码永久保存了下来,以后还可以用
注意:
1、运行python程序是不考虑文件后缀名的,但约定俗成,应该将python程序的后缀名命名为.py
2、运行python程序的三个步骤(******)
1、先启动python解释器
2、将python程序当中普通的文本文件读入内存(此时没有语法的概念)
3、python解释器解释执行刚刚读入内存的代码,开始识别python的语法
4、变量
1、什么是变量
变化的量
变:事物的变化
量:事物
2、变量有什么用
变量是存到内存
3、怎么用变量
1、变量名
命名规范:
1、变量名是由字母、下划线、数字。
2、一定不要用中文
3、区分大小写
4、不能用关键字作为变量名
5、一定不要用数字开头
2、赋值符号
=
看见等号肯定就是赋值符号
3、变量值
多种数据类型
常量:
在python中没有常量
HOST = '127.0.0.1'
pep8: 语法规范
注释:
单行注释:
多行注释:
垃圾回收机制
1、引用计数
当引用计数为0,垃圾回收机制自动回收这个垃圾
2、标记清除
3、分代回收
name = 'sean'
A = '你好'
a = 'hello'
print(A,a)
name_1 = 1
x = 1
x = 2
print(x)
垃圾回收机制
变量的三大特性
1、value(值)
2、id(内存地址)
3、type(类型)
a = 1
print(a)
print(id(a))
print(type(a))
name = 'sean'
print(name)
print(id(name))
print(type(name))
5、与用户交互
输入:
python3:
input("描述信息")
不管输入的是什么数据,最终返回一定是字符串
python2:
input():必须指定输入的数据类型
raw_input():与python3中相同,不管输入的是什么数据,最终返回一定是字符串
输出:
python3:
print()
python2:
print 打印的内容
格式化输出
第一种方式:
%s:接收任意类型的值
%d:接收数字
第二种方式:
.format()
默认按照位置传值
可以通过变量名指定位置传值、
print("你的名字是:{age},你的年龄是:{name}".format(name=name, age=age))
第三种:
f-string
print(f"你的名字是:{name},你的年龄是:{age}")
python3.6以后才有的特性
你的名字是:xx,你的年龄是:xx
name = input("请输入你的名字:")
age = input("请输入你的年龄:")
print(name)
print(type(name))
print(age)
print(type(age))
print("你的名字是:", name, "你的年龄是:", age) pass
print("你的名字是:%s,你的年龄是:%s" % (name, age))
print("你的名字是:{age},你的年龄是:{name}".format(name=name, age=age))
print(f"你的名字是:{name},你的年龄是:{age}")
6、基本数据类型:
int ---> 整形
float ---> 浮点型
str ----> 字符串
list ----> 列表
dict ----> 字典
bool ----> 布尔值