Python六大数据类型与可变类型

数字类型包括整型(int),浮点型(float),布尔型(bool),复数型(complex)。整型只能存储整数,浮点型可以存储整数和小数,布尔型输出的为True或False,True的值为1,False的值为0,复数用z=complex(a,b)的形式创建z=a+bi的复数,real(z)返回实部,imag(z)返回虚部。
字符串(string)的表现形式是用一对单或双引号括起。
列表(list)是一系列有序的元素,用一对中括号[ ]括起,元素之间用逗号隔开,元素类型不限,可以是数字字符串,元组字典集合,甚至是列表。
元组(tuple)是一系列有序数据,用一对小括号( )括起,数据间用逗号隔开,定义单个数据的元组末尾要加逗号(x , ),数据类型不限。
字典(dit)是一种映射类型,用大括号{}括起或用dict定义,其中元素以键值对形式{key:value}出现,键和值一一对应,键值对之间用逗号分隔,键(key)必须是不可变类型(数字、字符串、元组)且不可重复。
集合(set)是无序不重复序列,用{}或set()函数创建,后者可创建空集合。
数字,字符串,元组是不可变类型;列表,字典,集合是可变类型。

python 复制代码
import copy
#数字类型
int=2;float=0.12;bool=True;complex=complex(1,2)

int_copy=copy.copy(int);float_copy=copy.copy(float);
bool_copy=copy.copy(bool);complex_copy=copy.copy(complex);

int_id=id(int);int_copy_id=id(int_copy)
float_id=id(float);float_copy_id=id(float_copy)
bool_id=id(bool);bool_copy_id=id(bool_copy)
complex_id=id(complex);complex_copy_id=id(complex_copy)
print("int="+str(int),"int_id="+str(int_id),"int_copy="+str(int_copy),"int_copy_id="+str(int_copy_id))
print("float="+str(float),"float_id="+str(float_id),"float_copy="+str(float_copy),"float_copy_id="+str(float_copy_id))
print("bool="+str(bool),"bool_id="+str(bool_id),"bool_copy="+str(bool_copy),"bool_copy_id="+str(bool_copy_id))
print("complex="+str(complex),"complex_id="+str(complex_id),"complex_copy="+str(complex_copy),"complex_copy_id="+str(complex_copy_id))

if((int_id==int_copy_id)&(float_id==float_copy_id)&(bool_id==bool_copy_id)&(complex_id==complex_copy_id)):
    print("int,float,bool,complex是不变类型")
#字符串类型
string='123456';string_copy=copy.copy(string)
string_id=id(string);string_copy_id=id(string_copy)
print("string="+str(string),"string_id="+str(string_id),"string_copy="+str(string_copy),"string_copy_id="+str(string_copy_id))
if(string_id==string_copy_id):
    print("string是不变类型")

#列表类型
list=[1,2,3,4,5,6];list_copy=copy.copy(list)
list_id=id(list);list_copy_id=id(list_copy)
print("list="+str(list),"list_id="+str(list_id),"list_copy="+str(list_copy),"list_copy_id="+str(list_copy_id))
if(list_id==list_copy_id):
    print("list是不变类型")
else:
    print("list是可变类型")

#元组类型
tuple=(1,2,3,4,5,6);tuple_copy=copy.copy(tuple);
tuple_id=id(tuple);tuple_copy_id=id(tuple_copy)
print("tuple="+str(tuple),"tuple_id="+str(tuple_id),"tuple_copy="+str(tuple_copy),"tuple_copy_id="+str(tuple_copy_id))
if(tuple_id==tuple_copy_id):
    print("tuple是不变类型")
else:
    print("tuple是可变类型")

#字典类型
dit= {'a':1,2:'b'};dit_copy=copy.copy(dit)
dit_id=id(dit);dit_copy_id=id(dit_copy)
print("dit="+str(dit),"dit_id="+str(tuple_id),"dit_copy="+str(dit_copy),"dit_copy_id="+str(dit_copy_id))
if(dit_id==dit_copy_id):
    print("dit是不变类型")
else:
    print("dit是可变类型")


#集合类型
set= {1,'a',2,'b'};set_copy=copy.copy(set)
set_id=id(set);set_copy_id=id(set_copy)
print("set="+str(set),"set_id="+str(set_id),"set_copy="+str(set_copy),"set_copy_id="+str(set_copy_id))
if(set_id==set_copy_id):
    print("set是不变类型")
else:
    print("set是可变类型")
python 复制代码
int=2 int_id=140716377819608 int_copy=2 int_copy_id=140716377819608
float=0.12 float_id=2474589989968 float_copy=0.12 float_copy_id=2474589989968
bool=True bool_id=140716377023936 bool_copy=True bool_copy_id=140716377023936
complex=(1+2j) complex_id=2474589985072 complex_copy=(1+2j) complex_copy_id=2474589985072
int,float,bool,complex是不变类型
string=123456 string_id=2474592233936 string_copy=123456 string_copy_id=2474592233936
string是不变类型
list=[1, 2, 3, 4, 5, 6] list_id=2474590591104 list_copy=[1, 2, 3, 4, 5, 6] list_copy_id=2474590589184
list是可变类型
tuple=(1, 2, 3, 4, 5, 6) tuple_id=2474590072032 tuple_copy=(1, 2, 3, 4, 5, 6) tuple_copy_id=2474590072032
tuple是不变类型
dit={'a': 1, 2: 'b'} dit_id=2474590072032 dit_copy={'a': 1, 2: 'b'} dit_copy_id=2474592337344
dit是可变类型
set={1, 2, 'a', 'b'} set_id=2474591768352 set_copy={1, 2, 'a', 'b'} set_copy_id=2474591772608
set是可变类型

Process finished with exit code 0
相关推荐
noravinsc29 分钟前
python提升图片清晰度
开发语言·python
声声codeGrandMaster33 分钟前
Django之modelform使用
后端·python·django
假女吖☌37 分钟前
Maven 编译指定模版
java·开发语言·maven
水w3 小时前
【Python爬虫】简单案例介绍1
开发语言·爬虫·python
FreakStudio6 小时前
一文速通 Python 并行计算:07 Python 多线程编程-线程池的使用和多线程的性能评估
python·单片机·嵌入式·多线程·面向对象·并行计算·电子diy
qq_365911606 小时前
GPT-4、Grok 3与Gemini 2.0 Pro:三大AI模型的语气、风格与能力深度对比
开发语言
Susea&7 小时前
数据结构初阶:队列
c语言·开发语言·数据结构
慕容静漪7 小时前
如何本地安装Python Flask并结合内网穿透实现远程开发
开发语言·后端·golang
ErizJ7 小时前
Golang|锁相关
开发语言·后端·golang
GOTXX7 小时前
【Qt】Qt Creator开发基础:项目创建、界面解析与核心概念入门
开发语言·数据库·c++·qt·图形渲染·图形化界面·qt新手入门