Python数据类型

1. Python数据类型介绍

在Python中,所有的数据都有自己的类型。Python中的数据类型包括数字、字符串、列表、元组、字典、集合等。

1.1 数字类型

数字类型包括整数、浮点数和复数。其中整数类型是整个数字类型的基础,浮点数表示小数,而复数则是由实数和虚数构成。

# 整数类型

a = 100

print(type(a)) # <class 'int'>

# 浮点数类型

b = 3.14

print(type(b)) # <class 'float'>

# 复数类型

c = 2 + 3j

print(type(c)) # <class 'complex'>

1.2 字符串类型

字符串类型由一系列字符组成,可以使用单引号、双引号或三引号来表示。字符串可以进行切片、拼接、替换等操作。

# 字符串类型

s = "hello, world!"

print(type(s)) # <class 'str'>

# 字符串切片

print(s[1:5]) # ello

# 字符串拼接

print(s + " Python") # hello, world! Python

# 字符串替换

print(s.replace("world", "Python")) # hello, Python!

1.3 列表类型

列表类型是一种有序的集合,可以容纳任何类型的数据。列表可以进行切片、增加元素等操作。

# 列表类型

lst = [1, "hello", 2.3]

print(type(lst)) # <class 'list'>

# 列表切片

print(lst[1:]) # ['hello', 2.3]

# 列表增加元素

lst.append("Python")

print(lst) # [1, 'hello', 2.3, 'Python']

1.4 元组类型

元组类型与列表类型类似,但是元组是不可变的,一旦创建就无法修改。

# 元组类型

tup = (1, "hello", 2.3)

print(type(tup)) # <class 'tuple'>

# 元组切片

print(tup[:2]) # (1, 'hello')

# 元组不可变

# tup[0] = 2 # TypeError: 'tuple' object does not support item assignment

1.5 字典类型

字典类型是一种无序的键值对集合。每个键值对都用冒号(:)分割,而各个键值对之间用逗号(,)分割。

# 字典类型

dict1 = {"name": "Tom", "age": 18, "gender": "male"}

print(type(dict1)) # <class 'dict'>

# 字典取值

print(dict1["name"]) # Tom

# 字典增加元素

dict1["address"] = "Beijing"

print(dict1) # {'name': 'Tom', 'age': 18, 'gender': 'male', 'address': 'Beijing'}

1.6 集合类型

集合类型是一种无序的、不重复的元素集合。可以进行交、并、差等操作。

# 集合类型

set1 = {1, 2, 3, 4}

print(type(set1)) # <class 'set'>

# 集合交并差

set2 = {2, 3, 5}

print(set1 & set2) # {2, 3}

print(set1 | set2) # {1, 2, 3, 4, 5}

print(set1 - set2) # {1, 4}

2. 数据类型转换

在Python中,有时候需要将一个数据类型转换为另一个数据类型。Python中提供了多种内置函数来完成这个任务。

2.1 数字类型转换

数字类型之间可以互相转换,比如将整数类型转换为浮点数类型。

# 数字类型转换

a = 10

b = float(a)

print(b) # 10.0

2.2 字符串类型转换

字符串类型可以转换为数字类型或其他类型。

# 字符串转数字

a = "10"

b = int(a)

print(b) # 10

# 字符串转列表

a = "hello"

b = list(a)

print(b) # ['h', 'e', 'l', 'l', 'o']

2.3 列表类型转换

列表类型可以转换为元组类型或集合类型。

# 列表转元组

a = [1, 2, 3]

b = tuple(a)

print(b) # (1, 2, 3)

# 列表转集合

a = [1, 2, 3, 3]

b = set(a)

print(b) # {1, 2, 3}

2.4 元组类型转换

元组类型可以转换为列表类型。

# 元组转列表

a = (1, 2, 3)

b = list(a)

print(b) # [1, 2, 3]

2.5 字典类型转换

字典类型可以转换为列表类型。

# 字典转列表

a = {"name": "Tom", "age": 18}

b = list(a.items())

print(b) # [('name', 'Tom'), ('age', 18)]

3. 常见数据类型操作

Python中的数据类型有许多常见的操作,比如切片、拼接、遍历等。下面将介绍一些常见的操作。

3.1 序列类型切片

序列类型(包括字符串、列表、元组等)可以进行切片操作,从而截取部分数据。

# 序列类型切片

s = "hello, world!"

print(s[1:5]) # ello

lst = [1, 2, 3]

print(lst[:2]) # [1, 2]

tup = (1, 2, 3)

print(tup[1:]) # (2, 3)

3.2 序列类型拼接

序列类型之间可以进行拼接操作。

# 序列类型拼接

s1 = "hello"

s2 = "world"

s3 = s1 + ", " + s2

print(s3) # hello, world

lst1 = [1, 2]

lst2 = [3, 4]

lst3 = lst1 + lst2

print(lst3) # [1, 2, 3, 4]

3.3 序列类型遍历

序列类型可以进行遍历操作,使用for循环即可。

# 序列类型遍历

s = "hello, world!"

for char in s:

print(char)

lst = [1, 2, 3]

for num in lst:

print(num)

3.4 字典类型遍历

字典类型可以进行遍历操作,使用for循环即可。可以遍历键、值或键值对。

# 字典类型遍历

dict1 = {"name": "Tom", "age": 18}

for key in dict1:

print(key, dict1[key])

for value in dict1.values():

print(value)

for key, value in dict1.items():

print(key, value)

3.5 集合类型常见操作

集合类型的常见操作包括并集、交集和差集。

# 集合类型操作

set1 = {1, 2, 3}

set2 = {2, 3, 4}

# 并集

set3 = set1 | set2

print(set3) # {1, 2, 3, 4}

# 交集

set4 = set1 & set2

print(set4) # {2, 3}

# 差集

set5 = set1 - set2

print(set5) # {1}

4. 总结

Python中有多种数据类型,每种类型都有自己的特点。在实际编程中,我们需要根据具体的情况选择合适的数据类型。除了常见的数据类型之外,Python还提供了许多扩展的数据类型和模块,例如numpy、pandas等,可以方便地进行数据处理和分析。

在操作数据类型时,我们需要熟悉各种数据类型之间的转换方法,并掌握常见操作,包括切片、拼接、遍历、并集、交集和差集等。

后端开发标签