1、六大标准数据类型
Number 数字类型 (int, float, bool, complex)
String 字符串类型
# 使用""里面是字符串 string = "我是一段字符串" # 支持多行 string = """ 春晓 春眠不觉晓, 处处闻啼鸟。 夜来风雨声, 花落知多少。 """ # 元字符 可以使转义字符失效 string = r'hello \nworld' print(string)
List 列表类型
Listvar = ['鲁智深','鲁班',True, 3.1415, 18] # 输出鲁智深 从左向右数 第一个索引为0 print(Listvar[0]) # 获取列表中最后一个元素 从右向左数 第一个索引为-1 print(Listvar[-1]) # 计算列表的长度 print(len(Listvar)) # 获取列表中最后一个元素 print(Listvar[len(Listvar)-1]) # 获取列表的类型 print(type(Listvar)) # 修改列表的元素内容 将‘鲁智深’ 修改为 ‘hello’ Listvar[0] = "hello" print(Listvar)
tuple 元组类型
# ## 元组类型tuple # #### 元组类型的标志类型是逗号 # 只能获取 可以排序 但是不能修改 tuplevar = (1, 2, 3) print(tuplevar) print(type(tuplevar)) typleone = 1, print(type(typleone)) # 声明一个空元组 单独写一个()是可以的 ,但是如果写(1)则是整型 tuplevar = () tuplevar = ("卡") print(tuplevar) # 字符串可以通过下表获取值 hello = "hello world" print(hello[0] );
set 集合类型
# 集合类型,不能通过索引下标获取 # # 自动[去重],[无序]的容器 setvar = {"周星驰","刘德华","张学友","郭富城","周星驰"} # output set print(type(setvar)) print(setvar)
dict 字典类型
# dict 字典类型 # 如果单独定义 一个{} 不是集合(set)而是idct 类型 var = {} print(type(var)) # 输出dict # 定义一个空set var = set() print(type(var)) # 输出set # dict是以键值对的形式存储 dictvar = {'top':'蛮王','middle': '安妮','bottom': '伊泽瑞尔', 'support': '蒸汽机器人','jungle': '狼人'} print(dictvar) # {'top': '蛮王', 'middle': '安妮', 'bottom': '伊泽瑞尔', 'support': '蒸汽机器人', 'jungle': '狼人'} # 字典的修改 dictvar['top'] = '洛克' print(dictvar) # {'top': '洛克', 'middle': '安妮', 'bottom': '伊泽瑞尔', 'support': '蒸汽机器人', 'jungle': '狼人'} # 以下语法python支持 dictvar = {0: '第一个', 1: '第二个'} print(dictvar) # {0: '第一个', 1: '第二个'}
在内存中的存储规律 Number 部分 -5 ~ 正无穷的相同值 ID(内存指针) 是一致的
类型的转换
# 数据类型的转换 # 当两个不同类型的数据进行运算的时候默认向更高精度转换 # 默认精度从低到高 # bool->int->float->complex var1 = True # Ture转int后是1。False转int后是0 var2 = 1 var3 = 3.14 var4 = 3+4j # int 加 bool 默认转换为int print(var1 + var2) # 2 # bool 加 float 默认转换为 float print(var3 + var1) # 4.140000000000001 # bool 加 complex 默认转为complex print(var1 + var4) # (4+4j) # int 加 float 默认转为float print(var2 + var3) # 4.140000000000001 # int 加 complex 默认转为complex print(var2 + var4) # (4+4j) # float 加 complex 默认转为complex print(var3 + var4) # (6.140000000000001+4j)
# 强制类型转换 # Number 部分 # int 整数 浮点数 布尔型 字符串 # float 整数 浮点数 布尔型 字符串 # complex 整数 浮点数 布尔型 字符串 (复数) # bool (容器类型数据 / Number) var1 = 12 var2 = 3.14 var3 = 2-1j var4 = True var5 = 123456 var6 = "123456" # int 强转 res = int(var2) # 向下取整 print(res) res = int(var4) # 1 print(res) res = int(var5) # 123456 print(res) res = int(var6) # 123456 print(res) #float 强转 res = float(var1) print(res) # 12.0 res = float(var2) print(res) # 3.14 res = float(var4) print(res) res = float(var5) print(res) res = float(var6) print(res) # 复数强转 res = complex(var1) print(res) # (12+0j) res = complex(var2) print(res) # (3.14+0j) res = complex(var3) print(res) # (2-1j) res = complex(var4) print(res) # (1+0j) res = complex(var5) print(res) # (123456+0j) res = complex(var6) print(res) # (123456+0j) # bool 强转 res = bool(var1) print(res) # True res = bool(var3) print(res) # True res = bool({'top': ''}) print(res) # True # 布尔类型为False的情况有十种 res = bool(0) print(res) res = bool('') print(res) res = bool(False) print(res) res = bool(0j) print(res) res = bool([]) print(res) res = bool(()) print(res) res = bool({}) print(res) res = bool(set()) print(res) res = bool(None) print(res) res = bool(0.0) print(res) # bool() int() float() complex() 默认声明一个空数据
var1 = "hello world你好世界" var2 = 18 var3 = ['列表1','列表2'] var4 = {'集合一','集合二','集合一'} var5 = {"one": '第一个','two': '第二个'} var6 = (4,5,2) # 转为字符串 无论什么类型的数据转字符串 只要在两侧加上“” res = repr(str(var3)) print(res) # "['列表1', '列表2']" res = repr(str(var5)) print(res) # "{'one': '第一个', 'two': '第二个'}" # 转为list # 如果是字符串 就把每一个字符作为一个单独的元素 # 如果是容器 就将其两侧的符号换为中括号“[]” res = list(var1) print(res) # ['h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd'] print(list("你好世界")) # ['你', '好', '世', '界'] res = list(var6) print(res) # [4, 5, 2] res = list(var4) print(repr(res)) # ['集合二', '集合一'] # 转为元组 res = tuple(var1) print(res) # ('h', 'e', 'l', 'l', 'o', ' ', 'w', 'o', 'r', 'l', 'd', '你', '好', '世', '界') res = tuple(var3) print(res) # ('列表1', '列表2') res = tuple(var4) print(res) # ('集合二', '集合一') res = tuple(var5) print(res) # ('one', 'two')
评论一下?