基本数据类型
python3中有6个标准的数据类型:
数值(number)、
包括整数(int)、浮点数(float)、复数(complex)、布尔值(bool)
字符串(string)
python种字符串要求使用一堆单引号,或者双引号,或者双引号来包裹
列表(list)
name = ['小李', '卡卡', '李卡卡']
元组(tuple)
nums = (1, 2, 3, 4, 5)
集合(set)
x = {9, 'hello', 'hi'}
字典(dictionary)
person = {'name:卡卡', 'age:19', '身高:160cm'}
其中不可变数据类型有:数值、字符串、元组;
扫描二维码关注公众号,回复:
15336688 查看本文章
可变数据类型有:列表、字典、集合
数据类型的判断
1.使用函数type()判断变量所指的对象类型
a = 34
b = 'hello'
c = True
d = ['姚明', '李卡卡', '易建联']
# 使用type内酯类 查看变量的数据类型
print(type(a)) # <class 'int'>整数型
print(type(b)) # <class 'str'>字符串
print(type(c)) # <class 'bool'>布尔型
print(type(d)) # <class 'list'>列表类型
print(type(3.14)) # <class 'float'>浮点类型
2.使用函数isinstance()判断变量所指的对象类型
x = 23
print(isinstance(x, int))
# 结果为 true
数据类型的转换
序号 | 语法格式 | 说明 |
1 | int(x[,base]) | 将x转换成一个整数 |
2 | float(x) | 将x转换成一个浮点数 |
3 | comple(real[,imag]) | 创建一个复数 |
4 | complex(x) | 将x转换成一个复数,实数部分为x,虚数部分为0 |
5 | comple(x,y) | 将x和y转换成一个复数,实数部分为x,虚数部分为y,x和y是数字表达式 |
6 | str(x) | 将对象x转换成字符串 |
7 | repe(x) | 将对象x转换成表达式字符串 |
8 | eval(str) | 用来计算在字符串中有效python表达式,并返回一个对象 |
9 | tuple(s) | 将序列s转换成一个元组 |
10 | list(s) | 将序列s转换成一个列表 |
11 | set(s) | 转换成可变集合 |
12 | dict(d) |
创建一个字典,d必须是一个(key,value)元组序列 |
13 | frozenset(s) | 转换为不可变集合 |
14 | chr(x) | 将一个整数转换为一个字符 |
15 | ord(x) | 将一个字符转换为它对应的整数值 |
16 | hex(x) | 将一个整数转换为一个十六进制字符串 |
17 | oct(x) | 将一个整数转换为一个八进制字符串 |
算数运算符
python中支持很多算术运算符 +加 –减 *乘 /除 **幂 //整除 %取余
python算数运算符的运算优先级
第一级: **
第二级: * / % //
第三级: + -
同级运算符从左至右计算,可以使用()调整运算的优先级,加()的部分优先运算。
# python2中,两个整数相除,得到的结果会是一个整数 # python3中,两个整数相除,得到的结果是一个浮点数 print(6 / 2) # 3.0 print(9 / 2) # 4.5 # 幂运算 print(3 ** 3) # 27 print(81 ** 1 / 2) # 40.5 print(81 ** (1 / 2)) # 81 开平方根 9.0 # 整数运算 print(10 / 3) # 3.33333 print(10 // 3) # 整除只取整除的部分 print(-5 // 2) # -2.5 ==> -3整除向下取整 # 取余运算 print(10 % 3) # 1 取余就只取余数部分
赋值运算符
# =号 在计算机编程中 我们把它称之为赋值运算符 # 和数学里面的等号有区别 # 在数学中 # 1 + 1 = 2 # 4 = 4 # 在计算机当中,等号(赋值运算符)作用是 # 将等号右边的值赋值给等号左边的值 # 等号的左边一定不能是常数或者表达式 a = 4 # 10 = x # 3 + 3 = m m = 3 + 3 # 可以将等号右边的赋值等号左边 x = 1 # x = x + 2先算右边 1 + 2 # 复合 x += 2 # x = x + 2 print(x) # 3 x -= 1 # x = x - 1 print(x) # 2 x *= 3 print(x) # 6 x /= 2 # x = x / 2 print(x) # 3.0 x **= 5 # 243.0 print(x) x //= 2 print(x) # 121.0 x %= 2 # x = x % 2 print(x) # 1.0# 等号连接的变量可以传递赋值 a = b = c = d = 10 print(a, b, c, d) # x = 'yes' = y = z 这样是不对的 # 变量名要与值对应 不能多也不能少 m, n = (3, 5) print(m, n) # 拆包 x = 'hello', 'good', 'yes' print(x) # 变量名少于值 # y, z = 1, 2, 3, 4, 5 # print(y,z) # 拆包的时候变量名的个数与值的个数不一样会报错 # o, p, q = 1, 2 # print(o, p, q) # *可变长度 o, *p, q = 1, 2, 3, 4, 5 print(o, p, q) # 1 [2, 3, 4] 5 *o, p, q = 1, 2, 3, 4, 5 print(o, p, q) # [1, 2, 3] 4, 5 o, p, *q = 1, 2, 3, 4, 5 print(o, p, q) # 1, 2 [3, 4, 5]
比较运算符
# 大于 > 小于 < 等于 = 大于等于>= 小于等于<= 不等于!= 等等于== print(2 > 1) print(2 < 4) print(4 >= 3) print(4 <= 9) print(5 != 3) print('hello' == 'hello') # 比较运算符在字符串重的使用 # 字符串中的比较运算符 会根据各个字符的编码逐一进行比较 # ascii码 print('a' > 'b') # 97 > 98 false print('abc' > 'b') # false 第一个字母的比较a与b就是错的 后面的bc就不用在做比较了 # print('a' > 90) 报错 print('a' == 90) print('a' != 97) # 数字和字符串之间 做==运算 结果都是false 做!=运算 结果都是true 不支持其他的比较运算
逻辑运算符
# 逻辑运算符 逻辑与 逻辑或 逻辑非 # 逻辑与规则:只要一个运算符是false # 结果就是false 只有所有的运算数为true 结果才是true print(2 > 1 and 5 > 3 and 10 < 3) # false print(3 > 2 and 5 > 4) # true # 逻辑或的规则:只有一个运算符是true 结果就是true # 只有所有的运算数为false 结果才是false print(3 > 9 or 4 < 7 or 10 < 3) # true print(3 > 9 or 4 > 7 or 10 < 3) # false # 逻辑非 true ==>false false ==>true print(not(5 > 2)) # false # 运算符的优先级 print(10 + 2 * 3) # 16 # 逻辑运算符的优先级 not>and>or # 在开发中使用括号来表明运算符的优先级 print(True or (False and True)) # true and true ==>true # 逻辑与运算 # 只要有一个运算数是false 结果就是false # 只有一个运算符是true 结果就是true # 只要遇到false 就停止 不在执行 # 取值:取第一个为false 如果所有的运算数都是true 则取最后一个 # 逻辑或运算 # 只要有一个运算数是true 结果就是true # 只要所有的运算数为true 结果就是true # 只要遇到true 就停止 不再执行 # 取值:取第一个为true 如果所有的运算数都是false 则取最后一个