Python基础学习之基本数据结构详解【数字、字符串、列表、元组、集合、字典】

Python基础学习之基本数据结构详解

Python数据类型

在Python中,一共有几种基本的数据类型:

  • 数字(Number):整数,浮点数
  • 字符串(String):用于表达文本信息
  • 列表(List):用于存储一系列有序的元素
  • 元组(Tuple):与列表类似,但是元素不可修改
  • 集合(Set):用于存储一系列无序的元素(不能含有重复元素)
  • 字典(Dictionary):用于存储键-值对

在本文中,我们将详细讨论这些数据类型。

数字(Number)

数字分为整数和浮点数两种,其中整数(int)对应正整数、负整数和0,浮点数(float)对应带小数的数字。

Python中的数字支持基本的算术运算(加、减、乘、除):

a = 10
b = 3

# 加
print(a + b) # 输出:13

# 减
print(a - b) # 输出:7

# 乘
print(a * b) # 输出:30

# 除
print(a / b) # 输出:3.3333333333333335

需要注意的是,整数相除会得到浮点数的结果。如果要进行整数除法取整,可以使用双斜杠(//):

a = 10
b = 3

print(a // b) # 输出:3

还可以使用取余操作符(%)获取除法的余数:

a = 10
b = 3

print(a % b) # 输出:1

Python中支持的数字类型并不止这两种,还有十进制数、二进制数、八进制数和十六进制数等。想要了解更多,可以参考Python官方文档。

字符串(String)

字符串是Python中非常常用的数据类型之一,用于表达文本信息。字符串可以使用单引号(')、双引号(")或三引号('''或""")括起来:

s1 = 'Hello, Python!'
s2 = "I'm learning Python."
s3 = '''Python is a great language,
I love it very much.
'''
print(s1)
print(s2)
print(s3)

输出结果如下:

Hello, Python!
I'm learning Python.
Python is a great language,
I love it very much.

使用三引号可以方便地表达多行字符串。

字符串支持很多操作,比如拼接、重复、索引和切片等:

s = 'abc'
t = 'def'

# 拼接
print(s + t) # 输出:abcdef

# 重复
print(t * 3) # 输出:defdefdef

# 索引
print(s[0])  # 输出:a
print(s[-1]) # 输出:c

# 切片
print(s[1:]) # 输出:bc

需要注意的是,单个字符不可变,也就是说字符串是不可变的。如果需要对一个字符串进行修改,需要创建一个新的字符串。

s = 'abc'
s[0] = 'd' # 报错:'str' object does not support item assignment

列表(List)

列表是Python中非常常用的一种数据结构,用于存储一系列有序的元素。列表可以包含任意类型的对象,甚至可以包括其他列表。

创建列表的语法是在方括号中添加元素,各个元素之间使用逗号分隔:

lst = [1, 2, 3, 'a', 'b', 'c']

可以通过索引访问列表中的元素,也可以使用切片获取一段子列表:

lst = [1, 2, 3, 'a', 'b', 'c']

# 索引
print(lst[0])   # 输出:1
print(lst[-1])  # 输出:'c'

# 切片
print(lst[1:4]) # 输出:[2, 3, 'a']

可以通过内置的函数修改列表中的元素,比如添加、删除和排序等:

lst = [1, 2, 3, 'a', 'b', 'c']

# 添加元素
lst.append('d')   # 在列表末尾添加元素'd'
lst.insert(0, 0)  # 在列表第0个位置添加元素0
print(lst)        # 输出:[0, 1, 2, 3, 'a', 'b', 'c', 'd']

# 删除元素
lst.pop()         # 删除并返回列表末尾的元素'd'
lst.remove(3)     # 删除列表中第一次出现的元素3
print(lst)        # 输出:[0, 1, 2, 'a', 'b', 'c']

# 排序
lst.sort()        # 将列表中的元素按照从小到大的顺序排序
print(lst)        # 输出:[0, 1, 2, 'a', 'b', 'c']

元组(Tuple)

元组与列表类似,也是用于存储一系列有序的元素,但是元组中的元素不可修改。元组的创建语法是在小括号中添加元素,各个元素之间使用逗号分隔:

tup = (1, 2, 3, 'a', 'b', 'c')

可以通过索引访问元组中的元素,也可以使用切片获取一段子元组:

tup = (1, 2, 3, 'a', 'b', 'c')

# 索引
print(tup[0])   # 输出:1
print(tup[-1])  # 输出:'c'

# 切片
print(tup[1:4]) # 输出:(2, 3, 'a')

需要注意的是,元组是不可变的,也就是说不支持添加、删除和修改等操作。

集合(Set)

集合是Python中用于存储一系列无序的、唯一的元素,不能含有重复元素。集合的创建语法是在花括号中添加元素,各个元素之间使用逗号分隔:

s = {1, 2, 3, 'a', 'b', 'c'}

集合支持基本的集合操作,比如并集、交集、差集等:

s1 = {1, 2, 3, 'a', 'b', 'c'}
s2 = {2, 3, 'b', 'c', 'd', 'e'}

# 并集
print(s1 | s2) # 输出:{1, 2, 3, 'a', 'b', 'c', 'd', 'e'}

# 交集
print(s1 & s2) # 输出:{2, 3, 'b', 'c'}

# 差集
print(s1 - s2) # 输出:{1, 'a'}

字典(Dictionary)

字典是另一个非常常用的Python数据类型,用于存储键-值对。字典中的键必须唯一,但是值可以重复。创建字典的语法是在花括号中添加键-值对,各个键-值对之间使用逗号分隔:

dic = {'name': 'Alice', 'age': 18, 'score': 90}

可以通过键来访问字典中的值,也可以使用内置的函数修改字典中的值:

dic = {'name': 'Alice', 'age': 18, 'score': 90}

# 访问值
print(dic['name'])  # 输出:'Alice'
print(dic.get('age')) # 输出:18

# 修改值
dic['score'] = 95   # 更新键'score'对应的值
dic['gender'] = 'Female' # 添加新的键-值对
print(dic)          # 输出:{'name': 'Alice', 'age': 18, 'score': 95, 'gender': 'Female'}

至此,我们已经对Python中的基本数据结构进行了详细的介绍。希望本文能对正在学习Python的你有所帮助!

示例1

下列代码定义并打印一个包含数字、字符串、列表和字典的复杂数据类型:

data = {
    'name': 'Alice',
    'age': 18,
    'hobbies': ['swimming', 'reading', 'running'],
    'scores': {'math': 90, 'english': 85, 'biology': 95}
}
print(data)

输出结果如下:

{
    'name': 'Alice',
    'age': 18,
    'hobbies': ['swimming', 'reading', 'running'],
    'scores': {'math': 90, 'english': 85, 'biology': 95}
}

示例2

下列代码定义并打印一个包含数字、字符串、元组和集合的复杂数据类型:

data = {
    'name': 'Alice',
    'age': 18,
    'languages': ('Chinese', 'English'),
    'hobbies': {'swimming', 'reading', 'running'}
}
print(data)

输出结果如下:

{
    'name': 'Alice',
    'age': 18,
    'languages': ('Chinese', 'English'),
    'hobbies': {'swimming', 'reading', 'running'}
}

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python基础学习之基本数据结构详解【数字、字符串、列表、元组、集合、字典】 - Python技术站

(0)
上一篇 2023年5月13日
下一篇 2023年5月13日

相关文章

  • python之import机制详解

    Python之Import机制详解 简介 在Python中,import语句是用来导入一个模块或者包的。在使用import语句时,Python会根据一定的搜索路径来查找相应的模块或包。在本文中,我们将介绍Python中的import机制,包括搜索路径、名称解析以及import语句的内部执行过程。 搜索路径 当Python执行import语句时,它会按照一定的…

    python 2023年6月3日
    00
  • python读取图片的几种方式及图像宽和高的存储顺序

    Python读取图片的几种方式及图像宽和高的存储顺序 在Python中,我们可以使用多种库来读取图片,例如Pillow、OpenCV等。不同的库有不同的特点和使用方法。在读取图片的同时,了解图像宽和高的存储顺序也是非常重要的。 1. Pillow库 Pillow是Python Imaging Library的分支,可以方便地进行基本的图像处理,也可以轻松地读…

    python 2023年5月18日
    00
  • pip报错“ValueError: invalid literal for int() with base 10: ‘3.8’”怎么处理?

    当使用 pip 命令时,可能会遇到 “SyntaxError: invalid syntax” 错误。这个错误通常是由于命令行中输入的语法错误导致的。以下是详细讲解 pip 报错 “SyntaxError: invalid syntax” 的原因与解决办法,包含两条实例说明: 原因 “SyntaxError: invalid syntax” 错误通常是以下原…

    python 2023年5月4日
    00
  • pycharm console 打印中文为乱码问题及解决

    下面是“pycharm console 打印中文为乱码问题及解决”的完整攻略。 问题描述 在使用PyCharm打印中文字符时,可能会出现中文字符乱码的问题。例如使用print()函数打印中文字符,控制台可能输出乱码或者显示为英文字符。这可能是因为控制台编码格式错误导致的。 解决方法 在PyCharm中,有两种方式可以解决这个问题,分别是: 修改控制台编码格式…

    python 2023年5月20日
    00
  • python中time模块指定格式时间字符串转为时间戳

    下面是详细讲解“python中time模块指定格式时间字符串转为时间戳”的完整攻略。 确定时间字符串格式 在进行时间字符串转换的过程中,首先需要确定时间字符串的格式。假设我们有一个时间字符串为”2021-12-31 12:30:00″,那么该字符串的格式为”%Y-%m-%d %H:%M:%S”。其中,各个字符的含义如下: %Y:年份,四位数字; %m:月份,…

    python 2023年6月2日
    00
  • Python 页面解析Beautiful Soup库的使用方法

    Python 页面解析Beautiful Soup库的使用方法 BeautifulSoup是一个Python库,用于解析HTML和XML文档,并提供了一些方便的方法来获取和操作文档中的元素。在Python爬虫中,Soup是常用的工具之一。本文将详细讲解如何使用BeautifulSoup库进行页面解析。 解析HTML文档 以下是一个示例代码,演示如何使用Bea…

    python 2023年5月15日
    00
  • python 实现dcmtk关联pacs功能推送下拉影像(推荐)

    Python实现DCMTK关联PACS功能推送下拉影像 介绍 DCMTK是医学图像处理工具,可以实现医学影像文件的读取、修改、存储、传输等功能。在医疗行业,常常需要将医学影像文件从一台设备传输到另一台设备,例如从医学影像设备传输到医院的PACS系统。本文将介绍如何使用Python和DCMTK实现关联PACS功能,将医学影像文件推送到PACS系统。 步骤 1.…

    python 2023年6月13日
    00
  • python字符串与url编码的转换实例

    Python字符串与URL编码的转换是编程时常见的操作之一。在这里我将分享一下如何在Python中进行字符串和URL编码之间的转换。 Python字符串与URL编码的转换实例 对于Python字符串和URL编码之间的转换,我们可以使用urllib库。urllib是Python的一个标准库,它提供了处理URL的各种方法。 1. 将字符串进行URL编码 在Pyt…

    python 2023年5月31日
    00
合作推广
合作推广
分享本页
返回顶部