03|03 数据基本类型
数值
整数类型int
不限制大小,无论多复杂的算式都可以直接得到结果。一般返回整数,真除法得到小数。
文章图片
常见的运算符
【03|03 数据基本类型】可以进行大小比较,也可以连续比较判断。得到的结果是逻辑值,真或者假。 如 7 > 3 >= 3以及12 < 23 < 22
文章图片
比较判断
Python语言中可以直接使用二进制,八进制和十六进制来表示整数,只要加一个前缀来标识几进制。
文章图片
进制 浮点数类型float
浮点数操作与整数类似,但受到17位有效数字的限制。超过的话就使用科学计数法,有效位数,进制转换会导致精度误差。2.3*10^8.
在使用浮点数的时候,比如对浮点数进行相等小于大于的判断要。小心4.2+2.1使用py会出现6.3000000000001的情况。
判断两个浮点数是否相等: 使用他们两个数的差,如果他们的差小于一个足够小的数,就认为这两个浮点数是相等的。
复数类型
Python内置复数数据类型,并支持常见的复数运算。数学中 虚数表示是 a+bi,在计算机中表示为a+bj. i用j表示。可以使用(1+2j).imag 或.real 分别提取出复数的虚部或实部,即2和1。
复数之间只能比较是否相等。
复数应用,求平面上两个点(x1,y1)和(x2,y2)的距离。
更多的数学函数:math模块
math函数是专门处理整数和浮点数的。数学函数并不是在Python的内置里面,但我们可以引用它,import math。 dir函数可以告诉导入的模块中包含了什么内容。
- 数学常数: 圆周率π、自然对数的底e
- 数学函数: 三角函数、对数、最大公约数、最小公倍数等。
- cmath模块专门面向复数计算:math模块中的数学函数只能用于计算整数和浮点数,无法处理复数。
- 可以用来进行平面直角坐标和极坐标之间的转换。
判断与真值 逻辑bool类型: 逻辑值仅包括真true与假false两个。用来配合if/while等语句做条件判断。
文章图片
条件判断 逻辑运算 与 and 并且,and连接的两个真值需要同时为真,计算结果才为真。
文章图片
and
或 or 或者,or连接的两个真值只要有一个为真,计算结果就为真。
文章图片
or
非 not 否定,not连接的一个真值,非真为假,非假为真。
文章图片
not
and和or是双目运算,由两个逻辑类型真值进行运算,not是单目运算,作用于一个逻辑类型真值。
优先级,not最高,and次之,or最低。如果是较为复杂的表达式,可以使用小括号进行处理,有利于可读性。
各种类型对应的真值
- 整数,浮点数和复数类型:0是假,所有非0的数值都是真。
- 字符串类型:空串(“”)是假,所有非空串都是真。即便这个字符是一个空格,也是真。
- 所有序列类型(包括字符串):空序列是假,所有非空的序列都是真。
- 空值None:表示无意义或不知道,也是假。
文本的表示 字符串就是把一个个文字的字符串起来的数据。文字字符包含有拉丁字母,数字,标点符号,特殊符号,以及各种语言文字字符。
文章图片
语言文字字符
用双引号或者单引号都可以表示字符串,但必须成对。
多行字符串用三个连续单引号表示。
文章图片
字符串表示
特殊字符用转义符号\表示
文章图片
转义字符表
字符的编号:第一个字符的编号是0,第二个字符的编号是1, 最后一个字符的编号是-1,倒数第二个字符的编号是-2。使用这种整数编号可以从字符串中抽取出任何一个字符。 正向编号 ,反向编号,每一个字符都可以有两种编号。
文章图片
字符的整数编号 字符串和名字的区别
- 字符串是数据本身,名字是数据的标签,名字和字符串是名和值之间的关系。
- 一个字符串数值可以关联多个名字,一个名字在同一时刻只能关联一个字符串数值。
- 字符串数值只能是字符串类型,名字则可以关联任意类型的数值。
- 获取字符串的长度: len函数
- 切片slice操作: s[start:end:step]
文章图片
slice - 加法和乘法: +将两个字符串进行连接,得到新的字符串。 *将字符串重复若干次,生成新的字符串。
- 判断字符串内容是否相同(==),返回布尔值。>>> a = 'Hello' >>> a == 'Hello' True
- 判断字符串中是否包含某个字符串(in) 返回布尔值。
- 删除空格: str.strip 去掉字符串前后所有的空格,内部的空格不受影响。 str.lstrip去掉字符串前部,左部所有空格。str.rstrip去掉字符串后部,右部的所有空格。
- 判断字母数字: str.isalpha判断字符串是否全部由字母构成。str.isdigit判断字符串是否全部由数字构成。str.isalnum判断字符串是否仅包含字母和数字,而不含特殊字符。
-
字符串的高级操作:split 分割。join合并。 upper、lower、swapcase 大小写相关。 ljust、center、rjust 排版坐中右对齐。replace 替换子串。
文章图片
高级操作
- 序列sequence,能够按照整数顺序排列的数据。
- 序列可以通过从0开始的连续整数来索引单个对象。
- 可以执行切片,获取序列的一部分。
- 可以通过len函数来获取序列中包含多少元素。
- 可以用+加法来分连接为更长的序列。
- 可以用乘法*来重复多次,成为更长的序列。
- 可以用in来判断某个元素是否在序列中存在。
给数据命名
- 命名语法: < 名字 > = < 数据 >
- 名字由字母和数字组合而成,下划线“_”算字母,字母区分大小写。
- 不带特殊字符(如空格、标点、运算符等)
- 名字的第一个字符必须是字母,而不能使汉字。(在Python3的名字规则中,汉字算是字母)
- 名字像是一个标签,通过赋值来贴在某个数据数值上。未定义的名字无法使用,unassigned name
- 名字和数值之间的关联,称为引用。关联数值后的名字,就拥有了数据的值value和类型type。
- 一个数值可以和多个名字关联。
- 与数值关联的名字也称作变量,表示名字的值和类型可以随时变化。
- 变量可以随时指向任何一个数据对象,比如true,1.02,“Hello”。变量的类型随着指向的数据对象类型改变而改变。
- 赋值assignment,名字与数值关联的过程,称之为给变量赋值。
- “==”相等关系是对数值的相等性进行判断。
- “=”赋值号则是计算等号右边式子的值,将其赋值给等号左边的变量。
- 赋值语句就是通过赋值号将变量和表达式左右相连的句子。
- 赋值语句the_sum=0,实际上是创建了名为the_sum的变量,然后指向了数据对象“0”
- 最基本的赋值语句形式 < 名字 > = < 数据 >
- 合并赋值 a=b=c=1
- 按顺序依次赋值 a,b,c=7,8,9
- 简写赋值语句: price+=1 ,price*=1.5 ,price/= 3+4. +=之间不能有空格。
推荐阅读
- Docker应用:容器间通信与Mariadb数据库主从复制
- 做一件事情的基本原理是什么()
- dubbo基本认识
- 使用协程爬取网页,计算网页数据大小
- Java|Java基础——数组
- Python数据分析(一)(Matplotlib使用)
- Jsr303做前端数据校验
- Spark|Spark 数据倾斜及其解决方案
- 数据库设计与优化
- 爬虫数据处理HTML转义字符