Day04_数据类型

发布时间 2023-11-28 15:15:35作者: Unlucky

【一】数据类型

  • 数字类型总览
    • 整数类型(int)
    • 浮点类型(float)
  • 字符串类型(str)
  • 列表类型(list)
  • 字典类型(dict)
  • 布尔类型(bool)
  • 元祖类型(tuple)
  • 集合类型(set)

1 - 整型(int)

1.1 整型的作用

在Python中,整型(integer)是一种数据类型,用于表示整数值。整型在编程中具有广泛的应用和作用。

以下是整型在Python中的一些常见作用:

  1. 表示计数和索引:整型常用于表示计数和索引,比如循环中的计数器、列表和字符串的索引等。通过使用整型,可以方便地对数据进行迭代和访问。

  2. 进行数值计算:整型可以用于进行各种数值计算,包括加法、减法、乘法、除法等。Python提供了丰富的数值运算操作符和函数,可以对整型进行各种数学运算。

  3. 控制程序流程:整型常用于控制程序的流程,比如条件判断和循环控制。通过比较整型的值和使用逻辑判断,可以决定程序的执行路径和次数。

  4. 存储和处理数据:整型可以用于存储和处理各种数据。例如,可以使用整型来表示年龄、身高、数量等。通过对整型进行运算和逻辑操作,可以实现对数据的处理和分析。

  5. 与其他数据类型的转换:整型可以与其他数据类型进行转换,比如将整型转换为字符串、浮点数或布尔值。这种转换可以在数据处理和输出时很有用。

1.2 整型的定义方式

age = 22
height = 180

2 - 浮点型(float)

1.1 float的作用

在Python中,float是一种数据类型,用于表示浮点数(即带有小数部分的数字)。float在编程中有很多作用和用途。

以下是float在Python中的一些常见作用:

  1. 表示精确的浮点数运算:float可以用于执行各种浮点数运算,包括加法、减法、乘法、除法等。与整型不同,float可以表示小数部分,使得在计算需要精确浮点数结果的场景下非常有用。

  2. 存储和处理实数数据:float可以用于存储和处理实数数据,例如测量结果、物理量、金融数据等。通过使用float,可以保留和处理小数部分,以满足实际需求。

  3. 控制程序的数值精度:在某些情况下,需要控制程序的数值精度,确保得到期望的结果。float类型提供了一定的精度控制和舍入功能,可以帮助处理数值计算中的精度问题。

  4. 与其他数据类型的转换:float可以与其他数据类型进行转换,比如将float转换为整型、字符串或布尔值。这种转换可以在数据处理和输出时非常有用。

  5. 科学计算和数据分析:在科学计算和数据分析领域,float是一种常用的数据类型。通过使用float,可以进行各种复杂的数学运算、模型建立和数据处理,满足科学计算和数据分析的需求。

1.2 float的定义方式

money = 100.00
res = 1.1

3 - 字符串类型(str)

在Python中,字符类型(char)实际上并不存在。相反,Python使用单个字符的字符串来表示字符。字符串(str)是一种用于表示文本数据的数据类型,可以包含一个或多个字符。

字符串在Python中具有广泛的应用和作用,包括但不限于以下几个方面:

  1. 存储和处理文本数据:字符串是Python中最常用的数据类型之一,用于存储和处理文本数据。你可以使用字符串变量存储任何文本内容,比如名称、描述、句子等。

  2. 字符串操作和处理:Python提供了许多内置函数和方法,用于操作和处理字符串。你可以使用这些函数和方法来连接字符串、提取子字符串、查找和替换特定字符或子串等。

  3. 用户输入和输出:字符串在用户输入和输出方面非常有用。你可以使用内置的input()函数获取用户的输入,并将其存储为字符串。同时,你可以使用print()函数将字符串输出到屏幕上或写入文件中。

  4. 格式化字符串:Python中的字符串格式化功能非常强大。你可以使用格式化操作符(%)或字符串的format()方法来插入变量值、格式化数字、对齐文本等。

总结来说,虽然Python中没有专门的字符类型,但字符串类型可以用来表示和处理单个字符。字符串在存储文本、操作字符串、用户输入输出以及格式化等方面都有广泛的应用。

3.1 字符串的定义三种方式

name = 'wangxu'
addr = "上海"
gender = """male"""

3.2 字符串单 / 双引号嵌套

正确示范一:双引号内部,可以使用单引号,并且可以使用多个单引号 
msg_1 = "All in order to 'exist'" 
正确示范二:单引号内部,可以使用双引号,但是只支持双引号,不支持单个的单引号 
msg_2 = 'I was like "I felt stupid!"' 
错误示范: 单引号内部,嵌套了单引号,会导致语法错误 ---- End of statement expected 
msg_3 = 'I'm 18 years old!,hope your life : "wonderful!"'

3.3 格式化输出

1. %x 占位符

占位符类型

  • %s:字符串
  • %d:整数
  • %f:浮点数
  • %x:十六进制整数
name = "wx" 
age = 18 
height = 180 
# 使用 %s 占位符,输出字符串 
print("My name is %s." % name) 
# 使用 %d 占位符,输出整数
print("My age is %d." % age) # My age is 18. 
# 使用 %f 占位符,输出浮点数,默认保留六位小数 
print("My height is %f." % height) # My height is 175.500000. 
# 使用 %.2f 占位符,保留两位小数 
print("My height is %.2f." % height) # My height is 175.50. 
# 使用 %x 占位符,输出十六进制整数 number = 255 
print("Number in hex: %x." % number) # Number in hex: ff. 
# 两个以上的占位符格式化输出 
print("My name is %s; My age is %d" % (name, age)) # My name is Dream; My age is 18

2. f +

name = "wx" 
age = 99
print(f"My name is {name}, My age is {age}")

3. { } + format

name = "wx" age = 80
print("My name is {}; My age is {}".format(name, age))

4 - 列表(list)

4.1 列表的作用

在Python中,列表(List)是一种常用的数据结构,用于存储多个元素的有序集合。列表可以包含任意类型的元素,包括数字、字符串、甚至其他列表。

列表在Python中有以下几个主要的作用和定义方式:

  1. 存储和访问多个元素:列表可以用于存储多个元素,这些元素可以是相同类型或不同类型的数据。你可以使用方括号([ ])来定义一个列表,并使用索引访问列表中的元素。例如,list = [1, 2, 3] 定义了一个包含三个整数的列表,你可以通过索引 list[0]、list[1]、list[2] 来访问这些元素。

  2. 修改和更新元素:列表是可变(Mutable)的,这意味着你可以通过索引对列表中的元素进行修改和更新。你可以使用赋值语句将新的值赋给列表中的特定位置,或使用列表的方法(如append()、insert()、remove()等)来修改列表。

  3. 列表操作和处理:Python提供了许多内置函数和方法,用于操作和处理列表。你可以使用这些函数和方法来对列表进行排序、拼接、切片、搜索、删除等操作。

  4. 迭代和循环:列表可以用于迭代和循环操作。你可以使用for循环遍历列表中的每个元素,并对它们进行处理。列表还可以与其他控制流语句(如if语句)结合使用,实现更复杂的逻辑。

  5. 列表嵌套:在Python中,列表可以嵌套在其他列表中,形成多维列表的结构。这种嵌套的列表可以用于存储和处理更复杂的数据结构,例如矩阵、表格等。

4.2 列表定义方式

# 空列表
my_list1 = []
# 多元素列表
my_list2 = [1,2,3,4,5]
# 列表嵌套
my_list3 = [22, ['WANGXU','1501092'], 180, [11.22, 22.33]]
# 列表嵌套字典
my_list4 = [6, 7, 8, 9, {'addr': 'sh'}, 100, [{'age': '22'}], 20]

4.3 索引取值

print(my_list4[0])
print(my_list4[4]['addr'])

5 - 字典(dict)

5.1 字典的作用

在Python中,字典(Dictionary)是一种用于存储键-值对(Key-Value Pair)的数据结构。字典提供了一种灵活的方式来组织和访问数据,其中每个值都与唯一的键相关联。

字典在Python中有以下几个主要的作用和定义方式:

  1. 键-值存储:字典是一种用于存储和访问键-值对的数据结构。你可以使用花括号({ })来定义一个字典,并使用键来访问对应的值。例如,dict = {'name': 'John', 'age': 25} 定义了一个包含两个键-值对的字典,你可以通过键 dict['name']、dict['age'] 来访问对应的值。

  2. 修改和更新值:字典是可变(Mutable)的,这意味着你可以通过键对字典中的值进行修改和更新。你可以使用赋值语句将新的值赋给特定的键,或使用字典的方法(如update())来修改字典。

  3. 快速查找:字典提供了一种快速查找值的方式。由于字典使用键来索引值,而不是通过位置或索引号,因此你可以使用键快速查找对应的值。这对于需要根据特定标识符或关键信息查找数据的情况非常有用。

  4. 字典操作和处理:Python提供了许多内置函数和方法,用于操作和处理字典。你可以使用这些函数和方法来获取字典中的所有键、所有值,或以键值对的形式返回字典中的所有项。字典还支持合并、删除、遍历等操作。

  5. 数据转换和处理:字典可以用于将数据从一种形式转换为另一种形式,或进行其他数据处理操作。你可以使用字典来将数据进行分组、重组或重新映射。字典还可以与其他数据类型(如列表和集合)结合使用,进行数据处理和转换。

5.2 字典的定义方式

# 空字典
my_dict = {}
# 多元素字典
my_dict = {'name': 'wangxu', 'addr': 'sh', 'age': '22'}

6 - 布尔类型(bool)

6.1 布尔类型作用

布尔类型(Boolean)在Python中用于表示真(True)或假(False)的值。布尔类型的作用是进行条件判断和控制程序的流程。

6.2 布尔类型的定义以及使用场景

在Python中,可以使用关键字TrueFalse来表示布尔类型的值。这两个关键字是Python中的保留字,不可作为变量名使用。布尔类型的值通常用于条件语句、循环和逻辑运算等情况下,用来判断条件是否成立或控制程序的执行路径。

以下是一些布尔类型的定义和使用方式的示例:

  1. 直接定义布尔值:
x = True
y = False
  1. 使用比较运算符得到布尔值:
a = 10
b = 5
result = a > b  # result的值为True,因为10大于5
  1. 使用逻辑运算符得到布尔值:
p = True
q = False
result = p and q  # result的值为False,因为p和q的逻辑与为False
  1. 使用条件语句进行条件判断:
age = 25
if age >= 18:
    print("成年人")
else:
    print("未成年人")

布尔类型在Python中经常用于条件判断和逻辑运算,它是控制程序流程和实现逻辑判断的重要基础。通过使用布尔类型,你可以根据条件的真假来决定程序的下一步操作,从而实现复杂的逻辑控制。

7 - 元组(tuple)

7.1 元组的作用

元组(tuple)在Python中有多种用途和作用:

  1. 存储多个相关的值:元组可以用来组合多个值,这些值可能具有某种关联关系。例如,可以使用元组来表示一个点的坐标 (x, y),或者表示日期的年、月、日 (year, month, day)

  2. 函数返回多个值:在函数中,可以使用元组来一次性返回多个值。函数可以将这些值打包成元组,然后通过返回元组的方式将它们传递给调用者。调用者可以通过解包元组的方式获取各个返回值。

  3. 元组作为字典的键:由于元组是不可变的,因此可以作为字典的键。字典的键必须是不可变的对象,而列表等可变对象则不具备这个特性。元组的不可变性使得它可以在需要使用键值对的场景中作为字典的键。

  4. 元组作为集合的元素:类似于字典的键,集合的元素也必须是不可变的。因此,元组可以作为集合的元素,而列表则不能。可以使用元组来创建一个包含不可变元素的集合。

总的来说,元组在Python中具有多种用途,可以用于存储相关的值、函数返回多个值、作为字典的键和集合的元素等场景。由于元组的不可变性,它在某些情况下比列表更适合使用。

7.2 元组的定义方式

使用圆括号和逗号:

tuple1 = (1, 2, 3)
  1. 可省略圆括号:
tuple2 = 1, 2, 3
  1. 使用内置的tuple()函数:
tuple3 = tuple([1, 2, 3])

8 - 集合

8.1 集合的作用

集合(set)是Python中的一种数据类型,用于存储一组互不相同的元素,且没有固定的顺序。集合中的元素不能重复,且集合本身是可变的(mutable)。集合数据类型在Python中有以下几种作用:

  1. 去重:集合中的元素不能重复,因此可以用集合来去除列表或其他可迭代对象中的重复元素。可以将列表转换为集合,再转换回列表的方式实现去重操作。

  2. 快速判断元素是否存在:集合的底层实现是哈希表,因此在集合中进行元素的查找操作非常高效。相比于列表等线性结构,集合可以在常数时间内判断一个元素是否存在于集合中。

  3. 集合运算:集合类型支持并集、交集、差集等常见的集合运算。可以方便地对多个集合进行合并、取交集或取差集等操作。

  4. 支持快速的添加和删除操作:集合是可变的,可以通过添加(add)和删除(remove)元素来修改集合。这使得集合在需要动态维护一组元素,并进行快速插入和删除操作的场景中非常有用。

8.2 集合的定义方式

  1. 使用大括号({}):可以使用大括号来定义一个空集合或包含元素的集合。例如:

    my_set = {}  # 这样定义的是一个空字典而不是集合
    my_set = {1, 2, 3}  # 定义一个包含元素的集合
    ```
    
    PS:如果只使用一对空的大括号 `{}` 来定义集合,实际上创建的是一个空字典而不是集合。要创建一个空集合,可以使用 `set()` 函数。
    
  2. 使用set()函数:可以使用 set() 函数来创建一个空集合或将其他可迭代对象(如列表、元组)转换为集合。例如:

    empty_set = set()  # 创建一个空集合
    my_set = set([1, 2, 3])  # 将列表转换为集合
    ```
    
    PS: 在使用 `set()` 函数转换可迭代对象时,会去除重复的元素,保留每个元素的唯一实例。