python核心语法-数据存储与运算
字面量与变量
字面量
含义
字面量:指程序中,直接书写的固定值(数据),就称为字面量
类型及书写格式
数字类型
整数(int) :10 18 -5 0
浮点数/小数(float):8.5 3.14 1.0 -3.5
布尔 (bool) [True False] 表达现实生活中的逻辑,真或假
字符串 (str) ["str"] 描述文本的一种数据类型
空值 (NoneType) [None] 表示空或无值,仅包含一个值None
数据容器 [列表/元组/集合/字典] 存储多项数据的容器
说明:布尔类型本质就是数字类型,在涉及到数学运算时,会自动将True转为1,False转为0
案例
变量
变量:程序中用来存储单个数据的容器,通常会把经常发生变化的数据存储在变量中
注意:变量是指存储数据的容器(空间),而不是容器里面存储的数据
定义格式:变量名 = 变量值
变量名:每一个容器(空间)的名字
赋值(=):表示将等号右侧值赋予左侧的变量
变量值:每个变量都有自己存储的值(数据)
例子:
num = 1114.1 num = 1114.2
num = "str" num = False
num1,num2 = 20.7, 50
说明:python是动态类型语言,在程序运行时才进行类型检查,变量的类型可以在程序运行过程中改变(一个变量可以接收不同类型的值)
升级:变量可以一次性定义多个
案例
标识符
标识符是程序员在代码中为变量、函数、类等元素所起的名字
命名规则
只能包含字母(a-z,A-Z)、数字(0-9)、下划线( _ )
不能以数字开头
不能使用关键字:True、False、None、and、or、if、else、elif、for、while等
严格区分大小写,比如:age,Age,AGE是三个变量
命名规范
见名知意
多个部分使用下划线连接 _
英文字母全小写
PEP8:PEP是python社区的核心技术文档和标准化机制,而PEP8是python的代码风格指南(PEP 8 – Style Guide for Python Code | peps.python.org)
数据类型
python中常见的基础数据类型
| 标准名称 | 描述 | 说明 |
|---|---|---|
| int | 整数 | 数字类型,存放整数 如:10 -5 |
| float | 浮点数 | 数字类型,存放小数,如:8.5 3.14 -3.5 1.0 |
| str | 字符串 | 用引号引起来的都是字符串,如:"Python" |
| bool | 布尔 | 布尔类型,描述真和假,如:True False |
| NoneType | 空值 | 表示空或无值,仅包含一个值None |
通过type()语句来得到数据的类型,具体语法为:type(要查看类型的数据)
说明:变量本身是没有类型的,type(变量)输出的类型是变量中存储的数据的类型
案例
通过isinstance()检查数据是否属于指定的类型,返回的是一个bool值,具体语法为:isinstance(数据,类型)
说明变量本身是没有类型的,type(变量)输出的类型是变量中存储的数据的类型
案例
字符串
定义
字符串的三种定义方式
双引号定义
s1 = "Hello"
单引号定义 s2 = 'Python'
s2 = 'Python'
三引号定义(多行字符串)
s3 = """ 第一行 第二行 """
字符:是文本世界的基本单位,一个字母、一个数字、一个标点符号、一个汉字等都是一个字符
案例展示:
常见的转义字符
| 转义字符 | 名称 | 作用 |
|---|---|---|
| \' | 单引号 | 表示单引号 ' |
| \" | 双引号 | 表示双引号 " |
| \n | 换行符 | 开始新的一行 (换行) |
| \t | 制表符 | 增加缩进,缩进一个制表符 (tab) 的大小 |
案例展示:
拼接
多个字面量直接拼接
使用(+) 进行拼接,方式如下:
注意:+号可以用来拼接两个字符串,但是无法将非字符串与字符串进行拼接(非字符串类型需要转换为字符串类型)
案例展示
格式化
通过 %占位符 的形式完成字符串和变量的快速拼接。(其中 % 表示我要占位,s表示将变量转为字符串放入占位的位置)
注意:前面有多少个占位符(%s),后面就需要有多少个变量(或数据),前后数据需要一致
案例展示:
也可以通过f"内容{变量/表达式}" 的形式来完成快速格式化
案例展示:
输入与输出
input语句(函数)的功能就是获取键盘输入的数据,具体的用法为:s = input(提示信息)
print语句(函数)的功能就是将数据输出到控制台,具体语法为:print(数据..)
注意:无论键盘输入什么类型的数据,获取到的数据永远都是字符串类型
案例展示:
运算符
算术运算符
算术运算符是用于执行基本的数学运算的符号,作用于一个或多个操作数上,并产生一个计算结果
| 运算符 | 描述 | 举例说明 |
|---|---|---|
| + | 加法 | 1 + 5 : 1加于5 |
| - | 减法 | 8 - 3 : 8减3 |
| * | 乘法 | 3 * 8:3乘以8 |
| / | 除法 | 10 / 5:10除以5,除法结果是小数 |
| // | 整除 | 10 // 3:10整除3,整除结果为整数 |
| % | 取余 / 求模 | 10 % 3:10模于3,结果为1(10除3取余数) |
| ** | 幂指数 | 10 ** 3 : 10的3次方 |
案例展示:
算术运算符的优先级 --> ** --> * / // % --> + -
案例展示:
注意:0.09999999999999998的精度损失;由于计算机底层是基于二进制进行数据的存储与处理,二进制是无法准确的表示所有的小数,因此涉及到浮点数的运算,可能会存在精度损失
赋值运算符
赋值运算符是编程语言中用于将值(或表达式的结果)保存到变量中的运算符。(把右边的值,赋给左边的变量)
| 运算符 | 描述 | 实例 |
|---|---|---|
| = | 赋值运算符 | 把 = 号右边的结果赋值给左边的变量,如 num = 1+2,结果num的值为3 |
| += | 加法赋值运算符 | num += 2 等效于 num = num + 2 |
| -= | 减法赋值运算符 | num -= 2 等效于 num = num - 2 |
| *= | 乘法赋值运算符 | num *= 2 等效于 num = num * 2 |
| /= | 除法赋值运算符 | num /= 2 等效于 num = num / 2 |
| %= | 取模赋值运算符 | num %= 2 等效于 num = num % 2 |
| //= | 取整除赋值运算符 | num //= 2 等效于 num = num // 2 |
| **= | 幂赋值运算符 | num ** = 2 等效于 num = num ** 2 |
比较运算符
比较运算符,也称为关系运算符,用于比较两个值之间的关系。会计算运算符两边的表达式,然后返回一个布尔值作为结果(True - 表示比较关系成立;False - 表示比较关系不成立)
| 运算符 | 描述 | 实例 |
|---|---|---|
| == | 等于 | a == b 判断a是否等于b |
| != | 不等于 | a != b 判断a是否不等于b |
| > | 大于 | a > b 判断a是否大于b |
| >= | 大于等于 | a >= b 判断a是否大于等于b |
| < | 小于 | a < b 判断a是否小于b |
| <= | 小于等于 | a <= b 判断a是否小于等于b |
案例展示:
逻辑运算符
逻辑运算符是用于连接多个条件(布尔)表达式(其值为"真" 或 "假"),并返回一个最终布尔结果的运算符
| 运算符 | 描述 | 实例 |
|---|---|---|
| and | 逻辑与(并且) | 同时成立才是符合条件的(左右两边都为True,结果才为True) |
| or | 逻辑或(或者) | 只要有一个符合要求的即可(只要左右两边有一个为True,结果就位True) |
| not | 逻辑非(取反) | 取反操作,True变为False,False变为True |
and 案例展示:
or 案例展示:
