Python基础入门
计算机基础知识
一、计算机是什么
- 计算机(computer):
计算机(computer)俗称电脑,是现代一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。 - 特点:
- 运算速度快
计算机采用的是电子器件,其运算速度远非其他计算工具能比拟,而且计算机的运算速度还以每隔几个月提高一个数量级的速度快速发展 - 计算精度高
计算机的计算精度在理论上不受限制,一般的计算机均能达到15位有效数字,经过技术处理可以满足任何精度要求 - 存储容量大
计算机的存储性是计算机区别于其他计算机工具的重要特征,计算机中的存储器既能存储大量数据,也能快速准确的读取这些信息 - 具有逻辑判断能力
可以让计算机做出逻辑判断,分析命题是否成立,可根据命题成立是否采取对应的对策 - 工作自动化
计算机内部的操作运算是根据人们预先编制的程序自动控制执行的 - 通用性强
是计算机能应用于各个领域的基础,任何复杂的任务都可以分解为大量的基本的算数运算和逻辑运算
- 运算速度快
二、计算机的组成
- 硬件:
硬件是指组成计算机系统中可以看得见摸得着的物理设备。
cpu、主板、内存、电源、主机箱、键盘、显卡、显示器等… 看的见摸的着
硬件分为最小系统和其他配件,最小系统即CPU+主板+内存+显卡+显示器+电源+键
- 软件:
PyCharm QQ 浏览器 英雄联盟… 看不见摸不着- 软件就是通过编程,完成的一个一系列按照特定顺序组织的计算机数据和特定指令的集合
三、计算机语言的基本概念
- 概念 :
计算机语言(Computer Language)指用于人与计算机之间通讯的语言。 - 总结 :
能够按照程序运行、自动、高速处理数据的现代化智能电子设备
四、计算机语言的发展
- 机器语言 --> 汇编语言 --> 高级计算机语言
- 机器语言:
最初的机器语言都是由0 和 1组成的二进制数,说白了二进制就是机器语言组成的基础 - 汇编语言:
汇编语言是在机器语言基础之上发展的,它用了一些简单的字母和符号串来代替二进制串,这样就提高了语言的记忆性和识别性 - 高级计算机语言:
就是一系列指令的集合 例如: JAVA C C++ Python
五、高级语言
根据转化时间的不同,高级语言又分为编译性语言和解释性语言:
-
编译性语言:
源代码先编译生成机器语言,再由机器运行机器码。例如:C/C++等。 -
解释性语言:
源代码不进行预先编译,以文本方式存储,在运行程序的时候,解释性语言先解释再运行。例如:Python,JAVA等。 -
优缺点比较:
编译性语言由于会预先转化为机器码,所以速度较快,但是跨平台型不好。
解释性语言由于是运行时才对程序进行解释,而且每运行一次就要解释一次,所以速度相对于编译性语言速度较慢,但是其跨平台型良好。
六、内存空间
计算机的本质作用
- 用来存储和运算二进制的数据
计算机的内存空间作用
- 用来存储数据。
- 衡量计算机内存空间大小的单位:
- bit:位
- byte:1字节=8bit
- kb:1024字节
- mb:1024kb
- 计算机内存空间的大小表示什么?
- 内存空间越大,存储的数据越大
- 数据的换算
- bit (比特) 是计算机最小运算单位 ,只有0 和1 两个值
byte (字节) 是我们最小的可操作单位 - 8 bit = 1 byte
- 1024 byte = 1 KB ( 千字节 )
- 1024 KB = 1 MB ( 兆字节 )
- 1024 MB = 1 GB ( 吉字节 )
- 1024 GB = 1 TB ( 太字节 )
- 1024 TB = 1 PB ( 拍字节 )
- bit (比特) 是计算机最小运算单位 ,只有0 和1 两个值
- 计算中的内存空间会有两个默认的属性:
- 内存空间的大小
- 决定了该内存存储数值的大小/数据多少
- 内存空间的地址
- 用来让 cpu 寻址( cpu 可以定位到该地址表示的唯一内存空间)
- 内存空间的大小
七、DOS命令
命令 | 主要功能 |
---|---|
D: | 进入d盘 |
F: | 进入f盘 |
cd /? | 获取使用帮助 |
ipconfig | 查看本机ip地址 |
md | 创建目录 |
rd | 删除目录 |
cls | 清除屏幕 |
cd 文件名 | 进行指定目录 |
cd … | 返回上级目录 |
cd \ | 返回根目录 |
del | 删除文件 |
copy | 复制文件 |
move | 移动文件 |
type | 显示文本文件内容 |
ren | 更改文件名 |
dir | 查看目录文件 |
ping | 测试网络是否畅通 |
taskkill /? | 列出所有任务及进程 |
exit | 退出命令窗口 |
八、文本文件与字符集
文本文件
文本文件分为两类:纯文本 和 富文本
- 纯文本:只能保存单一的文本内容,无法保存内容无关的东西(如:txt 文件)
- 富文本:可以保存文本内容及以外的东西,如字体颜色、大小、图片… (如:有道笔记)
- 纯文本在计算机底层也会转换为二进制保存
- 将二进制码转换成字符的过程,称为解码 decode()
- 将字符转换成二进制码的过程,称为编码 encode()
常见字符集
-
ASCII : 美国编码,使用7位来能美国常用字符时行编码,是最早产生的编码规范,一共包含00000000~01111111共128个字符,可以表示阿拉伯数字和大小写英文字母,以及一些简单的符号。可以看出ASCII码只需要1个字节的存储空间,最高位为0。后被称为(American Standard Code for Information Interchange,美国信息交换标准代码)。它没有特定的编码方式,直接使用地址对应的二进制数来表示,非要说那就叫他ASCII 编码方式。
-
ISO-8859-1 :收录的字符除ASCII收录的字符外,还包括西欧语言、希腊语、泰语、阿拉伯语、希伯来语对应的文字符号。因为ISO-8859-1编码范围使用了单字节内的所有空间,在支持ISO-8859-1的系统中传输和存储其他任何编码的字节流都不会被抛弃。换言之,把其他任何编码的字节流当作ISO-8859-1编码看待都没有问题。这是个很重要的特性,MySQL数据库默认编码是Latin1就是利用了这个特性。ASCII编码是一个7位的容器,ISO-8859-1编码是一个8位的容器。
由此可见,ISO-8859-1只占1个字节,且MySQL数据库默认编码就是ISO-8859-1,有时,tomcat服务器默认也是使用ISO-8859-1编码,然而ISO-8859-1是不支持中文的,有时这就是在浏览器上显示乱码的原因。 -
GBK : 全称《汉字内码扩展规范》,支持国际标准ISO/IEC10646-1和国家标准GB13000-1中的全部中日韩汉字。GBK字符集中,中文字符占2个字节,英文占1个字节。 采用单双字节变长编码方式,英文使用单字节编码,完全兼容ASCII字符编码,中文部分采用双字节编码。
-
unicode : 万国码,包含世界上所有语言和字符,从以上几种编码规范可以看出,各种编码规范互不兼容,且只能表示自己需要的字符,于是,国际标准化组织(ISO)决定制定一套全世界通用的编码规范,这就是Unicode。
Unicode包含了全世界所有的字符。Unicode最多可以保存4个字节容量的字符。也就是说,要区分每个字符,每个字符的地址需要4个字节。这是十分浪费存储空间的,于是,程序员就设计了几种字符编码方式,比如:UTF-8,UTF-16,UTF-32。
最广为程序员使用的就是UTF-8,UTF-8是一种变长字符编码,注意:UTF-8不是编码规范,而是编码方式。我为大家介绍一下UTF-8的编码规则。
编码规则表
Unicode 十六进制码点范围 | UTF-8 二进制 |
---|---|
0000 0000-0000 007F | 0xxxxxxx |
0000 0080-0000 07FF | 110xxxxx 10xxxxxx |
0000 0800-0000 FFFF | 1110xxxx 10xxxxxx 10xxxxxx |
0001 0000-0010 FFFF | 11110xxx 10xxxxxx 10xxxxxx 10xxxxxx |
九、进制
进制之间的转换
- 十进制 --> 二进制 :
- 原理 : 数 除以2 取余,放个位,商再除2取余,放十位,以次类推,向左生成二进制数
- 二进制 --> 十进制 :
- 原理 :从右向左统计位数,每一位上的数 乘以 2的(位数-1)次幂 的和,就是十进制数
进制的计数
- 二进制:满2进1,共有2个数: 0 和 1
- 八进制:满 8 进1 ,共有8个数:0、1、2、3、4、5、6、7
- 十进制:满10进1 ,共有10个数: 0、1、2、3、4、5、6、7、8、9
- 十六进制:满16进1,共有16个数:0、1、2、3、4、5、6、7、8、9、A、B、C、D、E、F
十进制 | 二进制 | 八进制 | 十六进制 |
---|---|---|---|
0 | 0 | 0 | 0 |
1 | 1 | 1 | 1 |
2 | 10 | 2 | 2 |
3 | 11 | 3 | 3 |
4 | 100 | 4 | 4 |
5 | 101 | 5 | 5 |
6 | 110 | 6 | 6 |
7 | 111 | 7 | 7 |
8 | 1000 | 10 | 8 |
9 | 1001 | 11 | 9 |
10 | 1010 | 12 | A |
11 | 1011 | 13 | B |
12 | 1100 | 14 | C |
13 | 1101 | 15 | D |
14 | 1110 | 16 | E |
15 | 1111 | 17 | F |
16 | 10000 | 20 | 10 |
17 | 10001 | 21 | 11 |
18 | 10010 | 22 | 12 |
19 | 10011 | 23 | 13 |
20 | 10100 | 24 | 14 |
❤️专栏简介:本专栏记录了我个人从零开始学习Python编程的过程。在这个专栏中,我将分享我在学习Python的过程中的学习笔记、学习路线以及各个知识点。
☀️ 专栏适用人群:本专栏适用于希望学习Python编程的初学者和有一定编程基础的人。无论你是学生、职场人士还是对编程感兴趣的爱好者,都能从中受益。跟着我的学习笔记一起学习python吧。
🌙专栏目标:本专栏的目标是帮助我自己记忆、方便回顾所学知识以及帮助其他想学习python的小伙伴掌握Python编程语言的基本概念和技巧,并逐步提高我们的编程能力。通过这个专栏,我将学会如何编写Python代码,理解各种数据类型、控制结构和函数,掌握常用的Python模块和库,以及应用Python解决实际问题。
⭐️ 专栏主要内容:主要学习python的开发环境搭建;Python的基础知识,包括变量、数据类型、条件语句和循环等;python的数据结构和算法;python的函数和模块;python的文件处理等。
🌴 专栏说明 :如果文章知识点有错误的地方,欢迎大家随时在文章下面评论,我会第一时间作修改。让我们一起学习,一起努力,一起进步吧。