搞定Python的几个常用数据结构!

本文详细介绍了Python中的基本数据类型,包括整数和浮点数,以及它们在运算中的类型转换规则。涵盖了布尔类型、不同情况下的布尔类型处理,以及二进制、八进制和十六进制的表示与转换。此外,还讲解了字符串、列表、元组、集合和字典等序列和映射类型,以及转义字符知识点。最后提供了一份完整的Python学习资源指南。

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

python基本数据类型

  • 数字类型

  • 具体运算中数据的类型

  • 不同情况下的布尔类型

  • 各进制的表示与转换

  • 进制的表示

  • 进制的转换

  • 序列

  • str字符串

  • 列表(list)

  • 元组(tuple)

  • 序列总结

  • 集合(set)

  • 字典(dict)

  • 转义字符

  • 知识点总结

首先需要你的电脑安装好了Python环境,并且安装好了Python开发工具。

如果你还没有安装,可以参考以下文章:

如果仅用Python来处理数据、爬虫、数据分析或者自动化脚本、机器学习等,建议使用Python基础环境+jupyter即可,安装使用参考Windows/Mac 安装、使用Python环境+jupyter notebook

如果想利用Python进行web项目开发等,建议使用Python基础环境+Pycharm,安装使用参考:Windows下安装、使用Pycharm教程,这下全了Mac下玩转Python-安装&使用Python/PyCharm

数字类型

  • 整数:int

  • 浮点数:float

python中的数据类型仅有int和float两种(没有如short,long,double之分)

具体运算中数据的类型

这里查看各种情况的数据类型运用到了python中的type函数

print(type(1))  
print(type(-1))  
print(type(1.1111))  
print(type(1+1))  
print(type(1+1.0))  # 由于1.0为float类型,python将1+1.0自动转化为float类型  
  
print(type(1*1))  
print(type(1*1.0))  
#  python中的除法使用'/'结果为float类型,使用"//"为int类型  
print(type(2/2))  
print(type(2//2))  
print(type(1//2))  # 与其他语言类似python中整除会忽略小数点后数字  

运行结果:

==小结:==

  • 1、只要式子中出现了浮点型数字(小数)最终整体类型都会变成float类型

  • 2、使用’/'结果为float类型,使用"//"为int类型(第一点优先级最高)

  • 3python中整除会忽略小数点后数字,向下取整

布尔类型:bool python中,布尔类型也是数字的一种

不同情况下的布尔类型

#  bool类型包括 True和 False两种  
print(type(True))  
print(type(False))  
#  将bool类型转换为int类型  
print(int(True))  
print(int(False))  
#  python中0为假,非0为真(无论进制)  
print(bool(1))  
print(bool(0))  
print(bool(2.2))  
print(bool(0b10))  
#  对字符串取布尔值  
print(bool('abc'))  
print(bool(''))  
#  对列表取布尔值  
print(bool([1,2,3]))  
print(bool([]))  

运行结果:

==小结==

  • True和False开头需大写

  • 数字中:0为False,其他均为True;在其他类型中:空为False,非空为True

各进制的表示与转换

进制的表示

  • 二进制:0b

  • 八进制:0o

  • 十六进制:0x

# 二进制标识符为 0b,打印输出其代表的十进制数  
print(0b10)  
print(0b11)  
# 八进制标识符为 0o,打印输出其代表的十进制数  
print(0o10)  
print(0o11)  
# 十六进制标识符为 0x,打印输出其代表的十进制数  
print(0x10)  
print(0x1F)  
# 输入数字默认为十进制  
print(10)  

结果:

==小结==:需牢记各种进制的表示形式

进制的转换

  • 转换为二进制(binary):bin()

  • 转换为八进制(octal):oct()

  • 转换为十进制:int()

  • 转换为十六进制(hexadecimal):hex()

# 转换为二进制  
print(bin(10))  
print(bin(0o7))  
print(bin(0xE))  
# 转换为八进制  
print(oct(0b111))  
print(oct(0x777))  
# 转换为十进制  
print(int(0b111))  
print(int(0o777))  
# 转换为十六进制  
print(hex(888))  
print(hex(0b111))  
print(hex(0o7777))  

运行结果:

序列

str字符串

  • 字符串类型表示为单/双引号内的内容,由于英文语句中可能出现单引号的情况(Let’s go),此时可使用双引号扩起字符串中的内容
print("Let't go")  
print('Let't go')  #  其中此语句会报错  

运行结果:

字符串的运算
  • 两字符串间可相加拼接成一个字符串

  • 字符串乘上一个数n,得到n个该字符串

#  字符串的运算  
print("he"+"llo")  
print("hello"*3)  

结果

获取单个字符
  • 在str后添加[i](i代表想要获取str中的位置下标),可获取指定位置字符
#  输出指定位置的字符  
print("hello world"[0])  
print("hello world"[1])  
print("hello world"[2])  
print("hello world"[-1])  
print("hello world"[-2])  

结果

其中i可为负数,代表获取倒数第i位的数字

获取指定区间内的字符串
  • 使用‘:’对起始位置和末尾位置进行连接,如:[m:n+1]表示截取str中下标为m~n+1的字符串进行截取(n+1位置取开区间) [m:]则表示由下标为m的位置一直截取到末尾
#  截取指定区域的字符串  
print("hello world"[0:5])  
print("hello world"[-5:11])  
print("hello world"[-5:])  

列表(list)

列表存储的数据类型
  • 列表中可存储任意元素
#  列表可存储的类型  
print(type([1, 2, 3, 4, 5]))  
print(type(["hello", 1, False]))  
print(type([[1, 2], [3, 4], [True, False]]))  # 嵌套列表  

读取列表中的元素
  • 读取列表中的元素方法与str相同
#  读取列表中的元素  
print(["hello", "world"][0:])  # 和str类型的读取方式相同  

列表的运算
  • 与str的运算相似
#  列表的运算(和str的运算相似)  
print(["hello", "world"] + ["hello", "world"])  
print(["hello", "world"] * 3)  

元组(tuple)

  • 元组的基本使用方法,存储数据的规则和列表相同,它们的区别主要在以下几点:
  1. 列表是动态数组,它们可变且可以重设长度(改变其内部元素的个数)。

  2. 元组是静态数组,它们不可变,且其内部数据一旦创建便无法改变。

  3. 元组缓存于Python运行时环境,这意味着我们每次使用元组时无须访问内核去分配内存。

对元组的基本操作
#  元组存储是数据类型  
print(type((1, 2, 3, 4, 5)))  
print(type((1, 2, "hello", [1, 2, 3], True)))  
#  获取指定位置元素  
print((1, 2, 3, 4)[2])  
#  获取指定区域元素  
print((1, 2, 3, 4)[1:])  
print(type((1, 2, 3, 4)[1:]))  # 返回类型为tuple  
#  元组的运算  
print((1, 2, 3, 4)+(5, 6))  
print((1, 2, 3, 4)*2)  

序列总结

  • 提取指定位置元素方法:序列后面紧跟[i]

  • 提取指定区间元素方法:序列后面紧跟[m : n](m,n为区间下标,n为开区间)

==序列这种类型对其中的元素操作方法完全相同==

集合(set)

  • 集合中的数据是无序的,故不能用下标进行访问

  • 集合中的元素不重复

集合的运算
  • 集合的运算方法和数学中集合运算方法相同
#  求两个集合的差集  
print({1, 2, 3, 4, 5, 6} - {2, 3})  # '-'为求差集的符号  
#  求两个集合的交集  
print({1, 2, 3, 4, 5, 6} & {2, 3})  # '&'为求交集的符号  
#  求两个集合的并集  
print({1, 2, 3, 4, 5, 6} | {5, 6, 7})  # '-'为求差集的符号  

  • 空集合的定义:
>>> set()  

字典(dict)

  • 字典和集合定义的区别:dict:{key1:value1,key2:value2…} set:{value1,value2…}

  • 字典中的键不能重复也不可变(如list列表就是可变类型)

  • 空字典用{}表示

#  字典类型的输入格式  
print(type({1: 1, 2: 2, 3: 3}))  
#  字典的使用  
print({1:"Hello", 2:"world"}[2])  

转义字符

知识点总结

以上就是“搞定Python的几个常用数据结构!”的全部内容,希望对你有所帮助。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、Python必备开发工具

img

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

五、Python练习题

检查学习结果。

img

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

img

最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至优快云官方,朋友如果需要可以直接微信扫描下方优快云官方认证二维码免费领取【保证100%免费】。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值