计算机基础 & python基础
五大组成部分
控制器
运算器(数学运算+逻辑运算)
存储器(存取数据)
输入设备(键盘、鼠标等)
输出设备(显示器、打印机等)
CPU
CPU=运算器+控制器
CPU的分类:
精简指令集(RISC):ARM架构的CPU是世界上适用范围最广的CPU
复杂指令集(CISC):最常见的CISC指令集CPU主要有AMD、Intel、via等的x86架构的CPU,并被广泛适用于个人计算机领域。
CPU本质包含取指单元、解码单元、执行单元。
根据位数可分为32bit、64bit(指的是CPU一次执行指令从内存中取出的数据宽度为32或64)。向下兼容!
(为了方便统计,我们常用8bit表示1字节<bytes>,1024bytes=1k,1024k=1M,1024M=1G)
存储器(包含)
内存(主存):优点----存取速度快
缺点-----断电之后数据全部丢失,不能永久保存
硬盘(外存):分为固态硬盘、机械硬盘
优点-----可以永久保存数据
缺点-----存取速度慢于内存
磁带:速度最慢,但储存容量大,可永久保存(一般作为大型数据备份使用)
总线
随着计算机的处理器和存储器速度越来越快,单总线很难处理总线的交通流量了,所以就出现了多总线模式,即:
北桥(PCI桥):连接高速设备(二级高速缓存<--->CPU<--->PCI桥<--->主存储器)
南桥(ISA桥):连接慢速设备(SCSI总线<--->USB总线<--->ISA桥<--->磁盘总线<--->图形适配器)
计算机的执行过程:通过给操作系统发送指令,然后由操作系统调用硬盘将数据读入内存中,然后由CPU去内存执行代码
操作系统
位于计算机硬件与软件之间,用于协调、管理、控制计算机的硬件资源与软件资源。
操作系统两大功能:
1、将复杂的硬件操作封装成简单的功能提供给应用程序或者用户使用
2、将多个应用程序对硬件的竞争变得有序
- 完整的计算机系统分为三个部分
应用软件
操作系统
计算机硬件
编程及编程语言
编程:编程就是程序员按照某种编程语言的语法规范将自己想要让计算机做的事情表达出来
表达的过程就是编程,表达的结果就是程序(程序是一列的文件)
编程语言:是程序员与计算机沟通的介质
为什么要编程:编程的目的就是为了让计算机替人类去工作,从而解放人力,提升效率。
编程语言分类
机器语言-------直接用二进制编程,直接操作硬件
优点:执行效率高
缺点:开发效率低、难度大
汇编语言--------简写的英语标识替代二进制,但还是操作硬件
优点:开发效率比机器语言高
缺点:执行效率比机器语言低,需要操作硬件
高级语言--------编译型:运行速度快,开发效率低,跨平台性差(c,c++等)
--------解释型:运行速度慢,开发效率高,跨平台性强,但必须依赖解释器运行(python,PHP,Java,Ruby等)
总结:
执行效率从高到低:机器语言----汇编语言----编译型----解释型
开发效率从高到低:解释型----编译型----汇编语言----机器语言
变量
变化的状态/特征。
变即记录的状态是可以发生变化的
量即衡量/记录现实世界中的某种特征/状态
变量的基本作用:是用来存储数据,被后面的代码引用
- 定义变量的语法
变量名(访问到值的唯一方式)、赋值符号(将值的内存地址绑定给变量名)、变量值(表示状态)
例:
使用规则:先定义、再通过变量名去引用
变量的定义规范
- 变量名只能是字母、数字、下划线的组合
- 不能以数字开头
- 不能用关键字作为变量名(and,or,if,is,not........)
注意:定义变量名约定俗成的规则
- 不用中文、拼音
- 变量名不能让过长
- 变量名不能词不达意
变量名的定义方式:
- 驼峰体(AgeOfOldboy=43)
- 下划线(age_of_oldboy=43) #推荐使用
定义一个变量,变量的值会具备三个特征:ID,type,value
- 等号比较的是值
- is 比较的是 ID
注意:
- ID相同,type和value必定相同
- value相同type必定相同,但是ID可能不同
如下:
C:\Users\zhang>python
Python 3.6.5 (v3.6.5:f59c0932b4, Mar 28 2018, 17:00:18) [MSC v.1900 64 bit (AMD6
4)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>
>>> a='userinfo name:lining'
>>> b='userinfo name:lining'
>>> id(a)
41114840
>>> id(b)
41114912
>>> a==b
True
>>> a is b
False
>>>
格式化输出
一般我们都会遇到像这样的打印格式,它是怎么做到的呢???
--------- info of jack ---------
Name : jack
Age : 21
Sex : male
Job : player
------------- end ---------------
在Python中通常用%来实现占位,并按顺序进行赋值的,比如:
执行的结果是:Hello 小明, 你的成绩提升了 23.26%
需要知道的是:
%d 只接收整型
%f 只接收浮点型
%s 任意类型
%x 十六进制整数
当然也可以用format来实现,只需要注意传入的值的顺序即可,比如
使用format时亦可以指名道姓的传入,比如:
print('hello {x},would you like {y}'.format(y='eat', x='jack'))
# hello jack,would you like eat
当然,还可以这样玩:
x = 'jack'
y = 23
print(f"hello,my name is {x},i'm {y} years old")
# hello,my name is jack,i'm 23 years old
x = 10
print(f'the answer is {x**2 :05d} today') # the answer is 00100 today
print(f'the answer is {x**2 :5d} today') # the answer is 100 today
需要注意的是,必须要在传参之前就定义好变量
其他拓展练习:
print('%d-03%d' % (3, 1)) # 3-031
print('%d-%03d' % (3, 1)) # 3-001
print('%d%03d' % (3, 1)) # 3001 print('%.2f' % 3.1415926) # 3.14
print('%.4f' % 3.1415926) # 3.1416
那我们就可以解决上面的问题了!!!
userinfo='''
--------info of %s ---------
name : %s
age : %d
sex : %s
job : %s
------------ end -----------
''' %('jack','jack',21,'male','player')
print(userinfo)
执行python程序的两种方式
1、交互式
优点:调试程序/代码方便
缺点:无法永久保存代码
2、命令行
python3 D:\PycharmProjects\练习.py
可以永久保存代码(以文件的形式)
python执行程序的三个过程
1、先启动python解释器
2、将python程序当普通文件从硬盘读入内存
3、python解释器解释执行刚刚读入内存的文件代码
#只有在第3个过程时才识别python的语法
垃圾回收机制
python会定期的自动回收引用计数为0的值
# 垃圾回收机制
x = 12 # 引用计数为1
y = x # 引用计数为2 x = 11 # 引用计数为2-1=1
del y # 引用计数为1-1=0
如
当12这个值的引用计数变为0时,就会被自动回收!!
计算机基础 & python基础的更多相关文章
- 第一章 1.1 计算机和Python基础
一.计算机基础 1.1.进制 计算机中的数字有四种存在形式,分别是:十进制.二进制.八进制和十六进制 1.1.1.十进制 1.基数:0-9 2.进位:逢10进1 3.位权:例:123 = 3*10^0 ...
- 一周中的后两天 笔记(网路基础 Python基础)
网络基础 (统一的协议) 一, 计算机之间通过物理介质(网络设备)连接在一起 二, 计算机之间基于网络协议通信 tcp/ip五层 应用层: 传输层:tcp/udp协议 找到对应的软件 一个 ...
- python基础===python基础知识问答(转)
1.到底什么是Python?你可以在回答中与其他技术进行对比 Python是一种解释型语言.与C语言和C的衍生语言不同,Python代码在运行之前不需要编译.其他解释型语言还包括PHP和Ruby. P ...
- python基础---python基础语法
1.常用符号 逗号,枚举:一个函数有多个参数sum(1,2) 等于,赋值:把一个值,给一个变量,a=1 括号,函数的参数部分sum(x,y) 冒号,一个子过程的开始 双引号/单引号:表示字符串 运算符 ...
- 第一篇:python基础
python基础 python基础 本节内容 python起源 python的发展史 为什么选择python3 第一个python程序 变量定义 表达式和运算符 用户输入 流程控制 判断 流程控制 ...
- python基础教程
转自:http://www.cnblogs.com/vamei/archive/2012/09/13/2682778.html Python快速教程 作者:Vamei 出处:http://www.cn ...
- python基础教程(第二版)
开始学习python,根据Python基础教程,把里面相关的基础章节写成对应的.py文件 下面是github上的链接 python基础第1章基础 python基础第2章序列和元组 python基础第3 ...
- Python基础知识详解 从入门到精通(七)类与对象
本篇主要是介绍python,内容可先看目录其他基础知识详解,欢迎查看本人的其他文章Python基础知识详解 从入门到精通(一)介绍Python基础知识详解 从入门到精通(二)基础Python基础知识详 ...
- Python小白的发展之路之Python基础(一)
Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...
随机推荐
- 初次使用Mybatis
目录 mybatis简介 导入jar包 创建数据库以及数据库表 创建实体类 创建mapper.xml文件 配置mybatis 测试mybatis 三种查询方式 selectOne selectList ...
- 转:ls用法详解
在Linux中显示文件大小的时候,通常的做法是使用“ls -l”,显示的大小是文件的字节大小. 但是,如果文件比较大的话,显示起来不是特别易读,这个时候,可以使用“ls -lh”,就可以使用比较接近文 ...
- Floyd算法——计算图中任意两点之间的最短路径
百度百科定义:传送门 一.floyd算法 说实话这个算法是用来求多源最短路径的算法. 算法原理: 1,从任意一条单边路径开始.所有两点之间的距离是边的权,如果两点之间没有边相连,则权为无穷大. 2,对 ...
- BSGS+exBSGS POJ2417+POJ3243
a^x=b(mod p)求x,利用分块的思想根号p的复杂度求答案,枚举同余式两端的变量,用hash的方法去找最小的答案(PS:hash看上去很像链式前向星就很有好感).然后如果p不是质数时,就利用同余 ...
- OO期末总结
$0 写在前面 善始善终,临近期末,为一学期的收获和努力画一个圆满的句号. $1 测试与正确性论证的比较 $1-0 什么是测试? 测试是使用人工操作或者程序自动运行的方式来检验它是否满足规定的需求或弄 ...
- input输入框自动获取焦点
只要在该input标签后添加autofocus="autofocus"即可 代码实例: <html> <head></head> <bod ...
- Linux(1)-卸载挂载分区
> df -lh > fuser -m -v /dev/mapper/autovg-autolv > fuser -m -k -v /dev/mapper/autovg-autolv ...
- goroutine 和 线程的区别
我们在使用Go语言进行开发时,一般会使用goroutine来处理并发任务.那么大家有没有考虑过goroutine的实现机制是什么样的?很多同学会把goroutine与线程等同起来,但是实际上并不是这样 ...
- GDB使用记录
ref:http://sunyongfeng.com/201506/programmer/tools/gdb.html 简介 GDB,GNU Debugger,特性如下: GDB具备各种调试功效,可对 ...
- React 记录(4)
React文档:https://www.reactjscn.com/docs/components-and-props.html 慢慢学习:对照教程文档,逐句猜解,截图 React官网:https:/ ...