数据类型:
整型(Integers):表示整数,不带小数点
浮点型(Floating point numbers): 表示带有小数点的数字
复数(Complex Numbers):表示带有实部和虚部的数字
布尔型(Boolean):表示真假
字符串(String):一串字符
列表(List):有序的集合,可以包含任何数据类型
元组(Tuple):类似与列表,但不可变
集合(Set):无序且不重复的元素集合
字典(Dictionary):键值对的集合
整型:
-包括负整数
# 整数变量的定义
num = 1
print(num)
# 负数
num2 = 5
print(num2)
浮点型:
-由整数和小数部分组成。
-可能有四舍五入的误差。
# 浮点数的计算
f1 = 12.123
f2 = 0.2
print(f1 + f2)
# 四舍五入round
f3 = round(f1 + f2, 2)
print(f3)
import math
# 向上取整 ceil
n1 = math.ceil(f1 + f2)
print("向上取整的结果为", n1)
# 向下取整floor
n2 = math.floor(f1 + f2)
print("向下取整的结果是", n2)
布尔型:
-布尔类型变量只有True,False两种
-作用:作为真假的判断
-能够解释为假的值有:None、0/0.0、False,所有的空容器(空列表、空元组、空字典、空集合、空字符串)
字符串:
创建:
-一串字符,编程文本的数据类型
-一对单引号或者双引号定义一个字符串
-字符串可以是单引号或者双引号括起来的任意文本,也可以是'''或者"""引起来的任意文本。
# 单引号字符串
str1 = 'hello'
# 空串
str2 = str()
# 双引号字符串
str3 = "hello world"
# 三引号字符串
str4 = '''hello
world'''
str5 = """hello
world"""
运算:
-字符串加法(拼接)
-字符串乘法(重复)
# 字符串运算
str1 = "我出生于徐州"
str2 = "我爱徐州"
# 字符转加法(字符转拼接)
str3 = str1 + str2
print(str3) # 打印结果为我出生于徐州我爱徐州
# 字符串乘法(重复字符串)
str4 = str2 * 2
print(str4) # 打印结果为我爱徐州我爱徐州
索引:
-在字符串中可以使用索引获取一个字符串中指定位置的字符,索引计数从0开始。
切片:
-变量名[起始索引:结束索引+1:步数]
-包头不包尾
-步数默认为1可省略
-起始索引默认为0,可省略
-结束索引默认为-1,可省略
# 索引
str5 = 'I come from xuzhou'
print(str5[0]) # 打印字符串中第一个字符I
print(str5[5]) # 打印字符串中第六个字符e
# 切片 变量名[起始索引:结束索引+1:步数]
# 包头不包尾
# 步数默认为1可省略
# 起始索引默认为0,可省略
# 结束索引默认为-1,可省略
print(str5[0:6]) # 打印字符串中第1-6个字符
s = '123456789'
print(s[0:9:2]) # 打印13579
print(s[:9:2]) # 打印13579
print(s[::2]) # 打印13579
# 字符串反转
s = '123456789'
print(s[-1:-10:-1])
print(s[::-1]) # 打印987654321
数据类型转换 :
函数名 | 函数值 |
int(x,[基数]) | 将数字或字符串转换为整数,如果x为浮点数,则自动截断小数部分 |
float(x) | 将x转换为浮点型 |
bool(x) | 转换为bool类型的True或False |
str(x) | 将x转换成字符串,适合人阅读 |
int(x,[基数]) 其中,基数指的是x的进制
# 转换为int
# 纯数字字符串str->整数int
s = '2024'
n = int(s)
print(type(s), type(n)) # s的数据类型为str,n的数据类型为int
# 浮点数float->整数int
s = 1.12
print(int(s)) # s的数据类型为int
# 布尔bool->整数int
s1, s2 = True, False
print(int(s1), int(s2)) # 打印结果为1,0; True为1,False为0
# 转换为float
# str->float
s = '35.5'
print(float(s)) # 打印结果为35.5
# int -> float
n = 123
print(float(n)) # 打印结果为123.0
# bool->float
s1, s2 = True, False
print(float(s1), float(s2)) # 打印结果为1.0,0.0
# 转换为bool
# str->bool
s = '123sss'
print(bool(s)) # 打印结果为True
s = ''
print(bool(s)) # 打印结果为Flase 空字符串为False
# int->bool
n = 1
print(bool(n)) # 打印结果为True
n = 0
print((bool(n))) # 打印结果为Flase 结果为0则为False
# float->bool
f = 1.1
print(bool(f)) # 打印结果为True
f = 0.0
print(bool(f)) # 打印结果为Flase 结果为0则为False
# 转换为str
# int->str
n = 5
print(type(str(n))) # 打印结果类型为str
# float->str
f = 5.0
print(type(str(f))) # 打印结果类型为str
# bool->str
a = True
print(type(str(a))) # 打印结果类型为str
# 进制的转换
s = '10'
print(int(s,2)) # 将字符串中的数转换为2进制
转义字符\:
# 转义字符\
str = '123\'\"\"\'852'
print(str) # 打印结果为123'""'852