Python的基本数据类型

上一篇博客,我们介绍了Python的基础语法(Python基础语法:从入门到精通的必备指南),相信大家看过后,对python的整个语法逻辑有了一些了解,不了解也没有关系。接下来,我们将正式开始,一个概念一个类型的讲下去,希望能讲清楚。

目录

1. Python的基本数据类型简介

2. 具体示例讲解

2.1 Number(数字)

2.2 String(字符串)

2.3 List(列表)

2.4 Tuple(元组)

2.5 Dictionary(字典)

2.6 Set(集合)


下面我们直接开始第一个基础模块,Python的基本数据类型。

1. Python的基本数据类型简介

Python是一种强类型的编程语言,这意味着每个变量都有一个固定的数据类型,不能随意改变。为什么讲数据类型呢?这里涉及到一个Python的概念,叫做“变量”。那么什么是变量?"变量" 是一个用来存储数据值的名称,也就是上一篇文章里面讲的标识符。

然而,Python是一种动态类型的语言,这意味着你不需要显式地声明变量的类型,Python会根据赋给变量的值自动推断出变量的类型。

比如,写了一个 a=10,这里a就是标识符,=就是变量赋值,10就是数据类型(整型)

好,那么按照上面的说法,10就是数据类型。接下来,我们就可以讲基本的数据类型了。

Python的基本数据类型可以分为以下六种

  • 数值(Numbers)
  • 字符串(String)
  • 列表(List)
  • 元组(Tuple)
  • 字典(Dictionary)
  • 集合(Set)

数值(Numbers)

数值类型用于表示数字,包括整数、浮点数和复数。

  • 整数(int):表示不带小数点的数字,例如 1、2、3 等。
  • 浮点数(float):表示带小数点的数字,例如 1.2、3.14 等。
  • 复数(complex):表示由实部和虚部组成的数字,例如 1+2j、3-4j 等。

notes:你会发现,有的布尔值(bool)也是数值类型,但是在Python3中,布尔值是int的子类,所以这里讲三种数值类型。

字符串(String)

字符串类型用于表示由字符组成的文本,例如 "Hello, world!"、"你好,世界!" 等。

列表(List)

列表类型用于表示一组有序的数据,可以是任何类型的数据。列表可以是其他数据类型的组合。

元组(Tuple)

元组类型与列表类型类似,但元组是不可变的,也就是说不能对元组中的数据进行修改。

字典(Dictionary)

字典类型用于表示一组无序的键值对,键可以是任何类型的数据,值也可以是任何类型的数据。

集合(Set)

集合类型用于表示一组无序且不重复的数据。

另外,按照数据类型的不可变数据和可变数据。下面表格总结了 Python 的基本数据类型:

数据类型描述可变性
数值整数、浮点数、复数不可变
字符串由字符组成的文本不可变
元组一组有序的数据不可变
列表一组有序的数据可变
字典一组无序的键值对可变
集合一组无序且不重复的数据可变

不可变数据是指一旦创建了一个对象,就不能对其进行修改,只能通过重新赋值来改变其值。

2.具体示例讲解

2.1 Number(数字)

Python中的数字类型有整数(int)、浮点数(float)、复数(complex)等。

# 整数
x = 10

# 浮点数
y = 3.14

# 复数
z = 2 + 3j

# bool值
bl = True

print(x, y, z, bl)

输出:

10 3.14 (2+3j) True

2.2 String(字符串)

字符串是一系列字符的有序集合,在Python中用引号(单引号或双引号)括起来。字符串是不可变的,意味着一旦创建,就不能修改。

如果你学过C语言,C里面没有字符串,只有char变量生成的char数组。在Python中,String字符串也是一样,可以理解为一个数组。

类型为:变量[头部下标:尾部下标]

下图就是Python的字符串的结构:

上图,假设String的坐标为:TiYong,那么它有6个值,其中正向坐标是0-5,反向坐标就是-1--5。

下面我们以代码来解释:

str1 = 'TiYong'  # 单引号一个字符串变量
str2 = "TiYong"  # 双引号一个字符串变量

print(str1)           # 输出整个字符串
print(str2)           # 输出整个字符串

print(str1[0])        # 打印字符串的第一个字符
print(str1[-1])       # 打印字符串的最后一个字符
print(str1[2:5])      # 打印字符串第三到第五个字符(不包含第五个字符)
print(str1[2:])       # 打印字符串从第三个字符开始到末尾
print(str1 * 3)       # 打印字符串三次
print(str1 + "------" + str2)  # 打印字符串拼接

输出:

TiYong
TiYong
T
g
Yon
Yong
TiYongTiYongTiYong
TiYong------TiYong

2.3 List(列表)

列表是Python中最常用的数据类型之一,用于存储一系列有序的元素,可以包含不同类型的数据,也就是说,列表可以嵌套使用,可以是多种类型的组合。

下图是列表的展示:ls = 

列表是可变的,可以通过添加、删除或更改元素来修改列表。可以看到

my_list = [1, "apple", True, 3.14, [5, 6, 7], {"name": "John", "age": 30}]

# 按照正向索引坐标输出
print(my_list[0]) 
print(my_list[1])
print(my_list[2])
print(my_list[3])
print(my_list[4])
print(my_list[5])

# 添加元素
my_list.append('orange')
print(my_list)


# 修改元素
my_list[2] = 'tiyong'
print(my_list)

# 删除元素
del my_list[0]
print(my_list)

输出结果:

1
apple
True
3.14
[5, 6, 7]
{'name': 'John', 'age': 30}
[1, 'apple', True, 3.14, [5, 6, 7], {'name': 'John', 'age': 30}, 'orange']
[1, 'apple', 'tiyong', 3.14, [5, 6, 7], {'name': 'John', 'age': 30}, 'orange']
['apple', 'tiyong', 3.14, [5, 6, 7], {'name': 'John', 'age': 30}, 'orange']

2.4 Tuple(元组)

元组是由多个逗号分隔的值组成的有序序列,用小括号括起来。元组是不可变的,一旦创建,元组中的元素就不能被修改、添加或删除。元组和列表很相似,不同的是元组不可改变,列表可以改变。

示例代码:

my_tuple = (1, "banana", False, 2.718, [8, 9, 10], {"color": "blue", "size": "large"})

print(my_tuple[0]) # 输出第一个元素
print(my_tuple[-1]) # 输出最后一个元素
print(my_tuple) # 输出全部元素

输出结果:

1
{'color': 'blue', 'size': 'large'}
(1, 'banana', False, 2.718, [8, 9, 10], {'color': 'blue', 'size': 'large'})

2.5 Dictionary(字典)

字典是另一个非常有用的数据类型,用于存储键值对。字典是可变的,无序的,可以通过键来访问、添加或删除其中的元素。字典与列表类似,不同的是列表靠索引的偏移量来操作元素,字典拥有自己的key值。这里的关键是{ },这个花括号,还有键值对之间的  ,这两点就是字典的标志了。

所以,字典的类型为:d = {key1 : value1, key2 : value2, key3 : value3 }

注意:Key必须是唯一的,但Value则不必。

直接来看代码:

my_dict = {
    "integer": 42,
    "string": "TiYong",
    "boolean": True,
    "float": 3.14159,
    "list": [1, 2, 3],
    "tuple": ("a", "b", "c")
}

# 输出整个字典
print("原始字典:")
print(my_dict)

# 获取并输出特定键的值
print("\n获取特定键的值:")
print("整数值:", my_dict["integer"])
print("字符串值:", my_dict["string"])
print("布尔值:", my_dict["boolean"])
print("浮点数值:", my_dict["float"])
print("列表值:", my_dict["list"])
print("元组值:", my_dict["tuple"])

# 修改字典中的值
my_dict["integer"] = 100
my_dict["string"] = "world"
my_dict["boolean"] = False
my_dict["float"] = 2.71828
my_dict["list"].append(4)
my_dict["tuple"] = ("x", "y", "z")

# 输出修改后的字典
print("\n修改后的字典:")
print(my_dict)

# 添加新的键值对
my_dict["new_key"] = "new_value"

# 输出更新后的字典
print("\n添加新的键值对后的字典:")
print(my_dict)

# 删除键值对
del my_dict["boolean"]

# 输出删除键值对后的字典
print("\n删除键值对后的字典:")
print(my_dict)

示例输出结果:

原始字典:
{'integer': 42, 'string': 'TiYong', 'boolean': True, 'float': 3.14159, 'list': [1, 2, 3], 'tuple': ('a', 'b', 'c')}

获取特定键的值:
整数值: 42
字符串值: TiYong
布尔值: True
浮点数值: 3.14159
列表值: [1, 2, 3]
元组值: ('a', 'b', 'c')

修改后的字典:
{'integer': 100, 'string': 'world', 'boolean': False, 'float': 2.71828, 'list': [1, 2, 3, 4], 'tuple': ('x', 'y', 'z')}

添加新的键值对后的字典:
{'integer': 100, 'string': 'world', 'boolean': False, 'float': 2.71828, 'list': [1, 2, 3, 4], 'tuple': ('x', 'y', 'z'), 'new_key': 'new_value'}

删除键值对后的字典:
{'integer': 100, 'string': 'world', 'float': 2.71828, 'list': [1, 2, 3, 4], 'tuple': ('x', 'y', 'z'), 'new_key': 'new_value'}

2.6 Set(集合)

集合是一个无序且不重复的元素集合。集合是可变的,可以进行添加、删除操作,还可以进行集合运算,如并集、交集等。

语法:

parame = {value01,value02,...}
或者
set(value)

代码示例:

my_set = {1, "TiYong", True, 3.14, (5, 6, 7), frozenset({"a", "b", "c"})}

# 输出整个集合
print("原始集合:")
print(my_set)

# 添加一个新的元素
my_set.add("orange")

# 输出添加元素后的集合
print("\n添加元素后的集合:")
print(my_set)

# 尝试添加已存在的元素,集合不会发生改变
my_set.add("apple")

# 输出尝试添加重复元素后的集合,没有变化
print("\n尝试添加重复元素后的集合:")
print(my_set)

# 删除一个元素
my_set.remove(1)

# 输出删除元素后的集合
print("\n删除元素后的集合:")
print(my_set)

# 集合运算:并集
other_set = {3.14, "orange", "banana", 42}
union_set = my_set.union(other_set)

# 输出并集
print("\n集合并集:")
print(union_set)

# 集合运算:交集
intersection_set = my_set.intersection(other_set)

# 输出交集
print("\n集合交集:")
print(intersection_set)

输出结果:

原始集合:
{1, 3.14, frozenset({'a', 'b', 'c'}), (5, 6, 7), 'apple'}

添加元素后的集合:
{1, 3.14, frozenset({'a', 'b', 'c'}), 'orange', (5, 6, 7), 'apple'}

{1, 3.14, frozenset({'a', 'b', 'c'}), 'orange', (5, 6, 7), 'apple'}

删除元素后的集合:
{3.14, frozenset({'a', 'b', 'c'}), 'orange', (5, 6, 7), 'apple'}

集合并集:
{3.14, 'banana', frozenset({'a', 'b', 'c'}), 42, 'orange', (5, 6, 7), 'apple'}

集合交集:
{3.14, 'orange'}
PS C:\Users\MaiBenBen> & C:/Users/MaiBenBen/AppData/Local/Microsoft/WindowsApps/python3.8.exe f:/gastric.cancer/Untitled-1.py
原始集合:
{'TiYong', 1, 3.14, (5, 6, 7), frozenset({'a', 'c', 'b'})}

添加元素后的集合:
{'TiYong', 1, 3.14, 'orange', (5, 6, 7), frozenset({'a', 'c', 'b'})}

尝试添加重复元素后的集合:
{'TiYong', 1, 3.14, 'apple', 'orange', (5, 6, 7), frozenset({'a', 'c', 'b'})}

删除元素后的集合:
{'TiYong', 3.14, 'apple', 'orange', (5, 6, 7), frozenset({'a', 'c', 'b'})}

集合并集:
{'TiYong', 3.14, 'banana', 42, 'apple', 'orange', (5, 6, 7), frozenset({'a', 'c', 'b'})}

集合交集:
{3.14, 'orange'}

以上就是Python中的基本数据类型的介绍。不可变数据类型包括Number(数字)、String(字符串)、Tuple(元组),它们一旦创建就不能修改。可变数据类型包括List(列表)、Dictionary(字典)、Set(集合),可以进行增删改操作。对于不同需求,选择合适的数据类型,决定了程序的性能和功能实现。

希望这篇博客能帮助你更好地理解Python中的数据类型。

如果感觉阅读对您还有些作用,可以评论留言,关注我。谢谢您的阅读!

 往期学习:

Python安装教程(版本3.8.10)windows10

Linux系统:安装Conda(miniconda)

Conda快速安装的解决方法(Mamba安装)

VSCode安装教程(版本:1.87.0)Windows10

Python基础语法:从入门到精通的必备指南

  • 28
    点赞
  • 21
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TiYong

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值