python七种数据类型

简介: python七种数据类型

概述


python数据类型主要分为以下七大类:


Numbers(数字)

Boolean(布尔)

String(字符串)

List(列表)

Tuple(元组)

Dictionary(字典)

Set(集合)


Python 的七个标准数据类型中:


不可变数据类型(4 个):Number(数字)、Boolean(布尔)、String(字符串)、Tuple(元组);


可变数据类型(3 个):List(列表)、Dictionary(字典)、Set(集合)。


   可变数据类型的内容可以随着函数的执行发生变化,而不可变数据类型的则不行。


问:如何判断一个变量的类型?


答:①使用type(变量名称)方法,返回变量的数据类型②isinstance(变量名称,数据类型),只能返回True或False(真的还是假的)



1.数字类型(Numbers)


数值类型就是我们日常生活中的数字


python的数字类型包括:


int(长整型)

float(浮点型)

complex(复数)

# 整型int,浮点型float
a=1
b=1.1
print(a,b,type(a),type(b),isinstance(a,int))
#输出结果为
#1 1.1 <class 'int'> <class 'float'> True



2.布尔类型(Boolean)

布尔类型是与逻辑相关一种数据类型,只有两个值:True(真)与False(假)

其中布尔类型值可以相加,但一旦相加,类型就会转换为int类型

# 2.布尔型Boolean
c=True
d=False
d=c+d
print(type(c),type(d),d)
#输出结果
#<class 'bool'> <class 'int'> 1


3.字符串类型(String)

Python变量定义中,如果其赋值的内容是通过单引号或双引号引起来的内容就是字符串str类型。


字符串操作:

1.字符串索引

a[i]代表字符串a第i+1个位置的索引,a[-1]代表字符串a最后一个位置的索引

2.字符串截取

s=a[i:j],其中i,j可以不写,表示从位置i开始到位置j结束,其中截取的字符串不包括位置j

3.字符串拼接:“+”

4.字符串复用:“*“


# 3.字符串str
f='我是小高'
g=',你呢'
print(f[0],f[-1],f[:3],f[1:-1],f+g,f*3)
# 我 高 我是小 是小 我是小高,你呢 我是小高我是小高我是小高


4.列表类型(List)

python的列表可以完成大多数集合类的数据结构实现。它支持字符,数字,字符串甚至可以包含列表(即嵌套或者叫多维列表,可以用来表示多维数组)。


数组操作与字符串类型类似

多维数组初始化:

[…[[[0 for i in range(x)] for j in range(y)] for k in range(z)]…]


# 4.列表list
e=[1,2,3,"a"]
list=["b",'c']
print(type(e),e[2],e[2:-1],e+list,list*2)
#<class 'list'> 3 [3] [1, 2, 3, 'a', 'b', 'c'] ['b', 'c', 'b', 'c']
# 3*2二维数组初始化
list2=[[0 for i in range(2)] for j in range(3)]
#[[0, 0], [0, 0], [0, 0]]


5.元组类型(Tuple)


python的元组类似于list列表,元组用 () 标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。

它支持字符,数字,字符串,列表,元组等所有类型

元组的取值、截取、连接、重复与列表一样

# 5.元组tuple
a=1
b=True
c='aaa'
g=(1,2,3,4)
print(type(g),g)
g=(a,b,c,g)
print(g)
#<class 'tuple'> (1, 2, 3, 4)
#(1,True,'aaa',(1, 2, 3, 4))


虽然tuple的元素不可改变,但它可以包含可变的对象(上述可变数据),比如list列表。

a=[1,2,3]
tuple=(1,2,a)
print(tuple)
a[1]=4
print(tuple)
#(1, 2, [1, 2, 3])
#(1, 2, [1, 4, 3])




6.集合类型(Set)


集合(set)是由一个或数个形态各异的大小整体组成的,构成集合的事物或对象称作元素或是成员


基本功能是进行成员关系测试和删除重复元素

可以使用大括号 { } 或者 set() 函数创建集合,

注意:创建一个空集合必须用 set() 而不是 { },因为 { } 是用来创建一个空字典

不能往集合里边添加可变数据类型的数据

# 6.集合set
h={'a',"b",1,(1,2),"hishis"}
print(type(h),h)
se=set()
print(type(se))
# <class 'set'> {1, (1, 2), 'a', 'b', 'hishis'}
# <class 'set'>


7.字典类型(Dictionary)


字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型;列表是有序的对象集合,字典是无序的对象集合;字典用"{ }"标识;字典由索引(key)和它对应的值value组成


字典取值,字典当中的元素是通过键来存取的,而不是通过偏移存取

键(key)必须使用不可变类型(数字、布尔、字符串、元组)

在同一个字典中,键(key)必须是唯一的


# 7.字典dict
a=1
b=True
c=[1,2,3]
d=(1,2)
e='aaa'
i={"a":a,"b":b,"c":c,"d":d,"e":e,'i':"xiaogao"}
print(type(i),i)
#<class 'dict'> {'a': 1, 'b': True, 'c': [1, 2, 3], 'd': (1, 2), 'e': 'aaa', 'i': 'xiaogao'}
i['a']=False#可以改变原有数据类型
print(i.keys())
print(i.values())
print(i)
# dict_keys(['a', 'b', 'c', 'd', 'e', 'i'])
# dict_values([False, True, [1, 2, 3], (1, 2), 'aaa', 'xiaogao'])
# {'a': False, 'b': True, 'c': [1, 2, 3], 'd': (1, 2), 'e': 'aaa', 'i': 'xiaogao'}


类型比较


列表、元组、字典、集合的比较:

列表[ ](list):有序可改变集合,允许重复数据。

元组( )(tuple):有序不可改变集合,允许重复数据。

集合{ }(set):无序无索引(索引为键值)集合,无重复数据。

字典{ }(dictionary):无序,可变,有索引集合,无重复数据。



类型转换


属性 解释
int(x) 将x转化为一个整数,向下取整
float(x) 将x转化为一个浮点数
complex(x [,imge]) 将x转化为一个复数
str(x) 将x转化为一个字符串
repr(x) 将对象 x 转换为表达式字符串
eval(x) 用来计算在字符串中的有效Python表达式,并返回一个对象,其实就是能计算字符串表达式,并得到结果
tuple(s) 将序列s转化为一个元组
list(s) 将序列s转化为一个列表
set(s) 将序列s转化为可变集合,可用于列表去重
dict() 创建一个字典
frozenset(s) 将s转换为不可变集合
chr(x) 将一个整数转化为其ASCIIi码对应的字符
dict() 创建一个字典
hex(x) 将一个整数转换为一个十六进制字符串
oct(x) 将一个整数转换为一个八进制字符串
ord(x) 将一个字符转化为一个整数,该整数为x对应的ASCII码
相关文章
|
4月前
|
测试技术 索引 Python
Python接口自动化测试框架(练习篇)-- 数据类型及控制流程(一)
本文提供了Python接口自动化测试中的编程练习,包括计算器、猜数字、猜拳和九九乘法表等经典问题,涵盖了数据类型、运算、循环、条件控制等基础知识的综合应用。
48 1
|
4月前
|
数据处理 Python
【编程入门必读】Python数据类型大揭秘:掌握这些,让你的代码瞬间高大上!
【8月更文挑战第22天】Python提供多样数据结构支持编程需求。基本数据类型如数值(整型、浮点型、复数)、布尔型、字符串;复合数据类型含列表(有序、可变)、元组(有序、不可变)、字典(键值对)、集合(无序、唯一元素)。还有特殊类型如`NoneType`和`range`。Python内置数据类型转换如`int()`, `float()`, `str()`等方便使用。掌握这些类型有助于编写高效Python代码。
33 0
|
2月前
|
Python
【10月更文挑战第7天】「Mac上学Python 13」基础篇7 - 数据类型转换与NoneType详解
本篇将详细介绍Python中的常见数据类型转换方法以及 `NoneType` 的概念。包括如何在整数、浮点数、字符串等不同数据类型之间进行转换,并展示如何使用 `None` 进行初始赋值和处理特殊情况。通过本篇的学习,用户将深入理解如何处理不同类型的数据,并能够在代码中灵活使用 `None` 处理未赋值状态。
59 2
【10月更文挑战第7天】「Mac上学Python 13」基础篇7 - 数据类型转换与NoneType详解
|
2月前
|
编译器 数据安全/隐私保护 Python
Python--基本数据类型
【10月更文挑战第4天】
|
2月前
|
存储 Python
python数据类型、debug工具(一)
python数据类型、debug工具(一)
|
2月前
|
Python
[oeasy]python036_数据类型有什么用_type_类型_int_str_查看帮助
本文回顾了Python中`ord()`和`chr()`函数的使用方法,强调了这两个函数互为逆运算:`ord()`通过字符找到对应的序号,`chr()`则通过序号找到对应的字符。文章详细解释了函数参数类型的重要性,即`ord()`需要字符串类型参数,而`chr()`需要整数类型参数。若参数类型错误,则会引发`TypeError`。此外,还介绍了如何使用`type()`函数查询参数类型,并通过示例展示了如何正确使用`ord()`和`chr()`进行转换。最后,强调了在函数调用时正确传递参数类型的重要性。
23 3
|
3月前
|
存储 Java C++
30天拿下Python之数据类型
30天拿下Python之数据类型
37 4
|
2月前
|
存储 程序员 Python
Python编程入门:探索变量和数据类型
【10月更文挑战第8天】本文是针对初学者的Python编程入门指南,重点介绍Python中变量的定义和使用以及不同的数据类型。我们将通过实例来理解基本概念,并展示如何在Python程序中应用这些知识。文章旨在帮助初学者建立扎实的基础,使他们能够更自信地编写Python代码。
|
2月前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
33 0
|
2月前
|
存储 程序员 Python
python数据类型、debug工具(二)
python数据类型、debug工具(二)