Python3 基本数据类型
Python3 中有六个标准的数据类型:
- Number(数字)
- String(字符串)
- List(列表)
- Tuple(元组)
- Set(集合)
- Dictionary(字典)
Python3 的六个标准数据类型中:
不可变数据(3 个):Number(数字)、String(字符串)、Tuple(元组);
可变数据(3 个):List(列表)、Dictionary(字典)、Set(集合)。
这里List(列表)、Tuple(元组)、Set(集合)、Dictionary(字典)后面会单独说明其用法和常用函数。
Number(数字)
python中数字有四种类型:整数、布尔型、浮点数和复数。
- int (整数), 如 1, 只有一种整数类型 int,表示为长整型,没有
- python2 中的 Long。
- bool (布尔), 如 True。
- float (浮点数), 如 1.23、3E-2
- complex (复数), 如 1 + 2j、 1.1 + 2.2j
在Python 3里,只有一种整数类型 int,表示为长整型,没有 python2 中的 Long。
像大多数语言一样,数值类型的赋值和计算都是很直观的。
内置的 type() 函数可以用来查询变量所指的对象类型。
此外还可以用 isinstance 来判断:
a = 1
print(isinstance(a,int))
==>True
isinstance 和 type 的区别在于:
- type()不会认为子类是一种父类类型。
- isinstance()会认为子类是一种父类类型。
数字类型转换
有时候,我们需要对数据内置的类型进行转换,数据类型的转换,你只需要将数据类型作为函数名即可。
- int(x) 将x转换为一个整数。
- float(x) 将x转换到一个浮点数。
- complex(x) 将x转换到一个复数,实数部分为 x,虚数部分为 0。
- complex(x, y) 将 x 和 y 转换到一个复数,实数部分为 x,虚数部分为 y。x 和 y 是数字表达式。
String(字符串)
字符串 就是 一串字符,是编程语言中表示文本的数据类型。
Python中的字符串用单引号 ' 或双引号 " 括起来,同时使用反斜杠 \ 转义特殊字符。
常用方法:
1.判断类型
2.查找和替换
3.大小写转换
4.文本对齐
5.去除空白字符
6.拆分和连接
字符串格式化
Python 支持格式化字符串的输出 。尽管这样可能会用到非常复杂的表达式,但最基本的用法是将一个值插入到一个有字符串格式符 %s 的字符串中。
% 被称为格式化操作符,专门用于处理字符串中的格式。
python字符串格式化符号:
注意:
- 按字面意义级联字符串,如"this " "is " "string"会被自动转换为this is string。
- 字符串可以用 + 运算符连接在一起,用 * 运算符重复。
- Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。
- Python中的字符串不能改变。
- Python 没有单独的字符类型,一个字符就是长度为 1 的字符串。
- 字符串的截取的语法格式如下:变量[头下标:尾下标:步长]
运算符
Python中运算符包含算数、比较、赋值、位运算、逻辑、成员和身份,7种运算符。
算数运算符
以下假设变量a为10,变量b为21:
比较运算符
以下假设变量a为10,变量b为20:
赋值运算符
以下假设变量a为10,变量b为20:
位运算符
下表中变量 a 为 60,b 为 13二进制格式如下:
a = 0011 1100
b = 0000 1101
-----------------
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
逻辑运算符
Python语言支持逻辑运算符,以下假设变量 a 为 10, b为 20:
成员运算符
除了以上的一些运算符之外,Python还支持成员运算符,测试实例中包含了一系列的成员,包括字符串,列表或元组。
身份运算符
身份运算符用于比较两个对象的存储单元。
注: id() 函数用于获取对象内存地址。
is与==区别
is判断两个变量是否是引用同一个内存地址。
== 判断两个变量是否相等。
is 判断两个对象是否为同一对象, 是通过 id 来判断的; 当两个基本类型数据(或元组)内容相同时, id 会相同, 但并不代表 a 会随 b 的改变而改变。
== 判断两个对象的内容是否相同, 是通过调用 “__eq__() ”来判断的。