python的核心数据类型有哪些?

本文介绍了Python的核心数据类型,包括数字、字符、列表、字典、元组等,并详细阐述了类型转换方法如str(), int(), float()等。此外,还讨论了序列类型,特别是字符串、列表和元组的特点,如元组的有序不可变性,以及各种序列运算符的使用,如索引、切片和扩展切片。" 93523197,7402404,HTML5 Canvas 实现动态代码雨效果,"['前端开发', 'HTML', 'Canvas', 'JavaScript']

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数据类型

数字: int,long,float,complex,bool字符: str,unicode列表: list字典: dict元组: tuple文件: file其他类型: 集合(set),frozenset,类类型,None

类型转换

str(),repr()或format(): 将非字符类型数据转换为字符int(): 转为整数float(): 转为浮点list(s): 将字符串转为列表tuple(s): 将字符串转为元组set(s): 将字符串转为集合frozenset(s): 将字符串转为不可变集合dict(d): 创建字典,其中d必须是(ke, value)的元组序列。[(‘a’,1),(‘b’,2),(‘c’,3)] ——> {‘a’:1, ‘c’:3, ‘b’:2}chr(x): 将整数转为字符ord(x): 将 字符转为整数值hex(x): 将整数转为16进制字符bin(x): 将整数转为2进制字符oct(x): 将整数转为8进制字符

序列类型

指的是可以进行迭代,可以用下标进行操作的数据类型

字符串


> 把文本放入单引号,双引号或三引号中

> s1 = '这是字符串'
> 
> s2 = "这也是字符串"
> 
> s3 = '''这也是字符串'''
> 
> s4 = """这也是字符串"""
> 
> print(s1, s2, s3, s4)
> 
> # 这是字符串 这也是字符串 这也是字符串 这也是字符串

如果要使用unicode编码,则在字符之前使用字符u进行标识,如u"tony"文档字符: 模块,类或函数的第一条语句是一个字符的话,该字符就成为文档字符串,可以使用__doc__属性引用

> class Dog(object):
> 
> """狗对象"""
> 
> flag = 1
> 
> def __init__(self, name="yuk", age="25", hobby="米饭"):
> 
> self.name = name
> 
> self.age = age
> 
> self.hobby = hobby
> 
> print(Dog.__doc__)
> 
> # 狗对象
> 
> def printName(name):
> 
> """这是打印方法"""
> 
> print(name)
> 
> print(printName.__doc__)
> 
> # 这是打印方法


列表


[],有序可变,支持异构,任意嵌套;支持在原处修改:添加,删除等L1+L2: 合并两个列表,不修改原列表

> >>> L1=[1,2,3]
> 
> >>> L2=[4,5,6]
> 
> >>> L1+L2
> 
> [1, 2, 3, 4, 5, 6]
> 
> >>> L1
> 
> [1, 2, 3]

L1*N: 把列表重复N次,不修改原列表

> >>> L1*2
> 
> [1, 2, 3, 1, 2, 3]
> 
> >>> L1
> 
> [1, 2, 3]

in/not in: 成员关系判断,用法 item in[not in] container

> >>> 1 in L1
> 
> True
> 
> >>> 0 in L1
> 
> False

列表复制:浅复制:L2=L1,指向同一个地址

> >>> L2=L1
> 
> >>> L2
> 
> [1, 2, 3]
> 
> >>> id(L1)
> 
> 1511448597512
> 
> >>> id(L2)
> 
> 1511448597512

深复制:L2=L1[:];import copy L2=copy.deepcopy(L1)

> >>> import copy
> 
> >>> L2=copy.deepcopy(L1)
> 
> >>> id(L1)
> 
> 1511448597512
> 
> >>> id(L2)
> 
> 1511480648072


元组

(),有序不可变,支持异构,任意嵌套定义元组: 可省略小括号(这一特性可以交换两个参数的值)


> >>> t=1,2
> 
> >>> t
> 
> (1, 2)

元组并非完全不可变: 如果元组内嵌套了可变类型的元素,比如(‘a’,‘b’,[4,5]),那么对该可变元素的修改则直接修改了原元组

> >>> L1=[4,5]
> 
> >>> t=(1,2,L1)
> 
> >>> t
> 
> (1, 2, [4, 5])
> 
> >>> L1.append(6)
> 
> >>> t
> 
> (1, 2, [4, 5, 6])


序列运算符

索引运算: [i]切片运算: [i:j]扩展切片运算: [i:j:stride],都可为负数

推荐我们的Python学习扣qun:784758214 ,看看前辈们是如何学习的!从基础的python脚本到web开发、爬虫、django、数据挖掘等【PDF,实战源码】,零基础到项目实战的资料都有整理。送给每一位python的小伙伴!每天都有大牛定时讲解Python技术,分享一些学习的方法和需要注意的小细节,点击加入我们的 python学习者聚集地

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值