补一下第一天的学习笔记喵~
1.计算机相关的名词知识点
1.1计算机的组成
计算机之父冯·诺依曼,冯·诺依曼的结构体系,计算机分为五部分,
-
输入设备 把信息传入电脑中,键盘鼠标等
-
输出设备 信息从计算机中传递出来,比如音响显示器
-
存储器 计算机用于数据的存储与计算,计算机上有两个存储数据的设备:硬盘和内存
-
硬盘:电脑上的磁盘分区,储存在硬盘的数据都是持久化储存,不删除就一直存在,
-
内存:用来存储计算机/设备上应用运行产生的一些数据,内存中的数据,当程序退出时,该程序储存于内存中的数据就会被释放(在之后的知识有提及,python中写的程序存储在内存中)
-
-
运算器 调度存储器中的数据参数参与相应运算,加减乘除等等
-
控制器 控制器加运算器结合在一起成为中央控制器,CPU,相当于人的大脑,调度计算机各部分的运转
1.2命令行交互的指令
人与应用程序交互的模式,有两种
-
图形化界面 接触简单,按照操作描述很快上手
-
命令行指令 之后接触一些文件操作相关的指令,常用指令,在windows系统中叫dos命令,在mac中叫shell命令 指令在终端上运行,这个工具在mac上称为终端,在windows叫命令提示符工具
-
windows,用win键加r,输入cmd回车就可以启动
-
mac 在启动台上找到其他--终端
工具启动完成默认打开的是当前用户的路径
windows分磁盘,如C盘D盘;mac下没有磁盘,所有路径的延申都是从根目录/下延申出来。
常用指令:主要用来接触目录的跳转
1. 显示当前目录下的子文件 windows:dir mac:ls 显示隐藏的文件 windows:dir/a mac:ls-la 2. 路径的切换的指令 使用的指令是 cd 文件的路径 文件路径分两种 相对路径和绝对路径 绝对路径:从开始到结尾, windows的话 从盘符开始到指定文件夹的路径 如D:\Note\markdown笔记 mac就是就是从/开始的,不知道路径是什么找到文件夹右键显式简介--位置 相对路径:有参照物的,从参照物出发,就是当前文件夹 . 当前文件夹 .. 上一级文件夹 相对路径需要根据需求,从当前文件夹使用.或者..定位到相应位置,再去定位想要的路径 定位到公用用户 绝对路径:cd C:/Users/Public 相对路径:cd../Pub1ic windows下可能会涉及到盘符的切换,路径盘符与当前位置不一样,要先切换盘符,格式是 盘符: 回车即可
-
1.3计算机中数据存储
生活中计算数据的时候,按照十进制的规则进行算术。
十进制的规则是,逢十进一,十进制的数字符号是由0/1/2/3/4/5/6/7/8/9组成的
计算机中数据存储运算的时候,不是采用十进制而是采用二进制,二进制就是逢二进一,二进制的数字符号是由0/1组成
常见的进制形式,二、八、十、十六
二进制,在python中的标识(0b,b是binary),符号集只有0/1,0b10代表数字2
八进制,(0o,o是octal),符号集有0到7,0o10代表数字8
十进制,没有标识,默认就是十进制,符号集是0到9,10代表数字10
十六进制,(0x,x是hexadecimal),逢十六进一,就意味着没有遇到16不会出现两位数,符号集0/1/2/3/4/5/6/7/8/9/a/b/c/d/e/f,在十六进制里用a-f表达10到15的数字,字母大小写都可以,0x10代表数字16
八、十六进制出现的原因:数据太大,二进制表达的数据可读性差,组合太长,简化二进制的表达格式。
进制转换
十进制转换成二进制的规则
整数部分:将数据除以2取余数,重复这个操作,直到商为0,将所有的余数逆向拼接,结果就是二进制数据 比如:24==0b11000 24/2=12---0 12/2=6----0 6/2=3-----0 3/2=1-----1 1/2=0-----1 小数部分 将数据乘以2取整数部分,再将积的小数部分乘以2取整数部分,重复,知道小数部分为0,将整数部分正序拼接在一起 比如:0.125=0b.001 0.125*2=0.25--->0 0.25*2=0.5----->0 0.5*2=1.0------>1 如果数据是24.125====》0b11000.001
0.2===>二进制 0.2*2=0.4===0 0.4÷2=0.8===0 0.8*2=1.6===1 0.6*2=1.2===1 无限循环 小数存诸的时候会有精度损失的问题 尽量避免小数进行比较 例如 0.1+0.2=0.3
二进制数加法运算:基本特点“逢二进一”,即0+0=0,0+1=1,1+0=1,1+1=0并进位。
2.二进制转十进制
规则是按权展开就和 例如:以十进制为例, 如:5436= 5*1000+4*100+3*10+6*1 =5*10^3+4*10^2+3*10^1+6*10^0 1000/100/10/1都是对应本位置上的一个权值 每位上的权值=进制^(位数-1) 按照上面的规则,二进制上每位的权值=2Λ(位数-1) 二进制比较特殊,特殊的就是符号集只有0和1,0乘以任何数为0 1乘以任何数位数据本身,可以假设所有位置上都是1,二进制数据每位的权值从右到左的结果为1 2 4 8 16 32 64 128 256 512 1024... 另一个规则:将数据减去距离其最近且小于它的2幂数,将差值继续该操作 知道差值为0,统计2的幂数有哪些,然后从左向右的位置 有该幂数的位置为1,没有就是0 比如:79=0b1001111 79-64=15 15-8=7 7-4=3 3-2=1 1-1=0
练习
0b10111=1+2+4+0+16=23 0b10010=18 0b11100=28 0b10110=22
-
八进制二进制之间的互换
二转八规则: 八进制最大数字是7,7转换为二进制需要三位,为0b111,最大的数字需要三位,其他数字三位足以满足要求 规则:将二进制数据**从右向左**3位3位一分,左边不足3位前面补0,将分出的每一份按权展开求和,将和从左向右拼在一起就是八进制 比如 0b1100 111 011 0b001 100 111 011 1 4 7 3====>0o1473 八进制转二进制规则:将每位数转化为三位二进制数,将结果拼接在一起即可 比如0o2574 2--0b010 5--0b101 7--0b111 4--0b100 ==>0b101101111100
-
十六和二的转换
二进制转十六进制规则: 十六进制的最大数字是f(15),15转化为二进制需要4位,为0b1111,最 大的数字需要四位,其他的数字四位足以满足要求 规则:将二进制数据从右向左4位4位一分,左边不足4位前面补0,将分 出的每一份按权展开求和,将和从左向右拼接在一起就是十六进制 比如0b1100111011 0b0011 0011 1011 3 3 b ====>0X33b 十六进制进制转二进制规则: 将每位数转化为四位二进制数,将结果拼接在一起即可 比如0x9ae3 9--0b1001 a--0b1010 e--0b1110 3--0b0011 ===>0b101101111100
备注:八进制或者十六进制转化成十进制,规则也是按权展开求和;八进制和十六进制之间的转换需要以二进制为桥梁转换。
1.4编码解码
数据的存储格式是二进制的,计算机被研发出来的作用是存储和计算的。
常见的一些数据存储于计算机中是如何存储的,这个规则被称为编码
常见的一些数据【数字、文字、图片、音视频等等】如何存储于计算机中的?
进制转换中,数字可以通过规则转换成二进制,但是文字[汉字、英文等]如何进行存储??
因为数字可以直接存储,指定存储规则的逻辑将每一个文字都映射成一个数字,将数字转换为二进制存储,这种规则就叫编码
常见的编码方式有
1.ASCII码 是美国信息交换编码,只有128个文字符号
需要记住的就是 字符0-9 小写英文字母a-z 大写英文字母A-Z
字符0对应的十进制数据是48,
字母a对应的十进制数据是97,
字母A对应的十进制数据是65,
-
GB2312/GBK
国家编码标准,简称国标,兼容ASCII码
-
Unicode(统一码/万国码)
国际编码标准,收录的世界语言在内,兼容ASCII
Unicode下面有分为了很多种,常见的是其中的UTF-8,python用的就是这种编码方式
不同编码的存储区别:
-
ASCII码,单字节编码方式,内存中存储的时候是开辟一个字节进行存储的
-
GB2312/GBK存储汉字的时候规定汉字字符在内存中占2个字节
-
utf-8存储汉字的时候规定汉字字符在内存中占3个字节
计算机中数据的存储格式是二进制,数据在存储的时候的单位有哪些?
位(bit)二进制数据中一个0或者一个1称为1位,0b10这是2位
字节(Byte)一个字节等于8位1B=8b
千字节(KB)1KB=1024B
兆字节(MB)1MB=1024KB
吉字节(GB)1GB=1024MB
太字节(TB)1TB=1024GB
存储的时候开辟的最小的单位就是字节
编码:把文字数据编译成计算机中存储的二进制数据的过程称为编码
解码:把计算机中存储的二进制数据解析成文字数据的过程叫解码
1.5编程语言
语言:传递信息的方式,有效信息的传递包含三部分,传递着、接收者、共识信息[两方都能听懂你说的含义]
编程语言:人们想要和计算机打交道,并让计算机帮我们做事情,主动传递者需要向计算机传递一些计算机能听懂的语言,这就是编程语言
它分为低级编程语言和高级编程语言
-
低级语言包含机器语言、汇编语言
机器语言直接通过0和1指令与计算机进行交互。
汇编语言 使用一些容易理解的单词来代替指令与计算机进行交互
-
高级编程语言
编译型编程语言:写的代码计算机没法直接识别,需要将程序文件编译成计算机能识别的文件,再对文件中的内容逐行解释给计算机,让计算机完成操作,比如Java
解释型编程语言:直接对程序文件逐行向计算机进行解释,完成操作,比如python
1.6python解释器程序的安装
python官网www.python.org推出了自己的解释器软件,这个工具安装完成后包含着解释器以及python程序编写的相应的工具库文件(有缺陷)
Anaconda集成环境工具,除了有Python解释器及其自带的一些Python程序编写相应的一些工具库文件之外,额外安装好了180多个数据科学计算包【这个工具包对于官方提供的属于第三方,要使用的时候是需要自己来进行安装的】
版本号的解读:Python3.11.5 一般格式为A.B.C C--程序中出现小问题,修复之后发行的版本 B--程序中增加了新的功能发行的版本 A--程序重构 重新发行了一版新的
注意:编程语言环境不建议使用最新的,避免有些工具库没有适配到新环境,这个工具库就不能使用了,建议使用稳定的环境(老版本)
-
C:\software\anaconda python.exe解释器,由它向计算机解释写的每行Python代码的含义
-
C:\software\anaconda\Lib python环境下的工具库目录【这些工具库都是原生的,可以直接使用】
-
C:\software\anaconda\Lib\site-packages 三方工具库的目录【这些工具是需要额外安装的】
-
C:\software\anaconda\Anaconda3\scripts\pip.exe管理工具库的软件【负责 下载、安装、卸载等等工具库的软件】
全局变量Path的解读 Q:为什么安装anaconda的时候要把Python解释器路径放在全局变量PATH下??? A:写代码的时候代码文件可以在任意的目录下,但是python.exe这个解释器文件想要发挥作用只能在安装路径下能找到【方便在任意位置获取解释器解释Python程序】
在终端上书写python的时候没有限制路径,查找顺序是
-
在全局路径pth下进行查找有没有文件夹中包含这个执行文件的,有的话直接调度运行,如果没有就进行第2步
-
查看cmd当前路径下有没有该执行文件,有的话直接调度执行,如果没有提示既不是内部命令也不是外部命令
全局路径设置的流程: windows的设置流程: 此电脑-右键-属性-高级系统设置-环境变量-用户变量[仅针对于当前用户]/系统变量[针对于所有用户]-PATH
1.7开发工具的安装
利用可视化工具编写代码,软件使用的是pycharm[集成开发工具]集成开发工具就是集编写代码、运行代码、调试代码于与一身的开发工具 关于pycharm的设置
-
设置主题File|Settings|Appearance&Behavior|Appearance-Theme
-
设置编辑区的背景图File|Settings|Appearance&Behavior|Appearance|background image
-
设置字号字体File|Settings|Editor|Font
-
设置解释器 File | Settings | Project | Python Interpreter
-
设置文件表头 File | Settings | Editor | File and Code Templates | Python Script
可用的预定义文件模板变量为: $ {PROJECT_NAME} - 当前项目的名称。 $ {NAME} - 在文件创建过程中在“新建文件”对话框中指定的新文件的名称。 $ {USER} - 当前用户的登录名。 $ {DATE} - 当前的系统日期。 $ {TIME} - 当前系统时间。 $ {YEAR} - 今年。 $ {MONTH} - 当月。 $ {DAY} - 当月的当天。 $ {HOUR} - 目前的小时。 $ {MINUTE} - 当前分钟。 $ {PRODUCT_NAME} - 将在其中创建文件的IDE的名称。 $ {MONTH_NAME_SHORT} - 月份名称的前3个字母。 示例:1月,2月等 $ {MONTH_NAME_FULL} - 一个月的全名。 示例:1月,2月等