一.认识python
1>冯诺依曼体系结构
1.计算机功能:
算术运算,逻辑判断,数据存储,网络通信等。
2.计算机的构成:
CPU中央处理器。(算术运算,逻辑判断。)
存储器(内存,外存)。(存储数据。)
输入设备。(鼠标键盘麦克风。)
输出设备。(显示器,音响,耳机,打印机。)
3.内存,外存(硬盘等)区别:
内存的存储空间较小,外存的存储空间较大。
内存的访问速度快,外存的访问速度慢。
内存比外存成本更高。(更贵)
内存上的数据容易丢失(断电,数据就没了),外存上的数据能够持久化存储(断电数据也在)。一般机械硬盘存储数据在几年到十几年。
4.CPU和GPU(显卡)的区别:
CPU:通用计算芯片
GPU:专用计算芯片
2>什么是编程
硬件赋予计算机之躯体,软件赋予计算机之灵魂。
制作软件的过程,称为软件开发,也叫编程。
编程语言:
机器语言(01序列),汇编语言(move,push),高级语言(c语言,Java,python)。
3>什么是python
1.python常用于:
科学计算/数据分析
web开发(搭建网站)
自动化运维
人工智能
爬虫程序
自动化测试
2.python的优缺点:
优点:
语法言简意赅,容易上手.
功能强大,用途广泛.
生态丰富,具有海量的成熟第三方库.
方便调用C/C++编写的代码进行高性能/系统级操作.
缺点:
执行效率比较弱.
对于多核心并发程序支持偏弱.
动态类型系统对于大型项目不太友好.
二.python基础语法
1>.基础常识
在python中,2/3=0.666666666666,而不是0!
在编程中,没有四舍五入!
1.66666666666665是浮点数,遵循IEEE754标准,会存在一定误差.
形如1+2-3称为表达式.
这个表达式的运算结果,称为表达式的返回值.
1 2 3 这样的数字,称为字面值常量.
+ - * /称为运算符/操作符.
**在python中表示乘方运算,**2即为求平方.
=是赋值运算符,不是比较相等.
python中使用#来进行单行注释(与C语言中//注释代码同理)
python中使用一对三个单引号或者一对三个双引号来注释整段(与C语言中/**/注释代码同理)
2>.关于变量
1.变量命名的规则(必须遵循):
变量名必须由数字,字母,下划线构成。
变量名首字符不能是数字。
变量名不能和python中的关键字重复。
变量名大小写敏感,即区分大小写。
2.变量命名的规范(可不遵循):
3.变量的创建与赋值
语句同样是a=____的形式,但首次出现意为创建变量,第二次出现意为修改变量的值.
4.变量的类型
变量的类型由其初始化的值的类型决定。
整型int:
能表示的数据范围是“无穷”的,可以根据要表示的数据的大小,自动扩容。
浮点数float:
相当于C语言中的double类型,是双精度浮点数。
字符串str:
要求使用引号把一系列字符引起来就构成了字符串.(单引号双引号都行)
python函数:
type()函数:用于查看变量类型。
len()函数:用于计算字符串长度.
特殊情况下,字符串里本身包含单/双引号,就使用双/单引号来表示这个字符串.
如:
或者:
在这种情况下,使用两种同样的引号,会导致编译器报错:
还有一种特殊情况,即字符串中本身既有单引号又有双引号时,我们使用三引号(单/双三引号均可)来表示这个字符串.如:
或者:
字符串拼接:
将字符串a与字符串b拼接起来,表示为a+b.
字符串拼接对于原来的a和b没有影响.
字符串和整形不能拼接.
布尔类型bool:
布尔类型是一个特殊的类型,取值只有两种,True(真)和False(假).
布尔类型主要用于逻辑判定.
3>.类型的意义
不同的类型,占用的内存空间是不同的:
int默认是4个字节,动态扩容.
float固定8个字节.
bool一个字节.
str变长的.
不同的类型,对应能够进行的操作也是不同的:
int或float可以进行+ - * / ,不能使用len.
str可以进行 + , 但不能 - 不能 * 不能 / , 可以使用len.
4>.python设计哲学
解决一个问题,只提供一种方案。