Skip to content

数据类型

1. 基本数据类型

Python 的基本数据类型包括整数(int)、浮点数(float)、布尔值(bool)、字符串(str)等。

1.1 整数(int)

  • 定义:整数是没有小数部分的数,可以是正数、负数或零。

  • 表示:Python 中的整数可以表示任意大小,因为 Python 会根据需要自动扩展整数的存储空间。

  • 示例

    python
    age = 23             # 整数
    temperature = -5     # 负整数
    big_number = 1000000 # 大整数
  • 常用操作

    • 加法:a + b
    • 减法:a - b
    • 乘法:a * b
    • 整除:a // b(返回商的整数部分)
    • 取余:a % b(返回除法的余数)
    • 幂运算:a ** b(a 的 b 次幂)

1.2 浮点数(float)

  • 定义:浮点数是带小数部分的数字,通常用于表示小数或科学计数法形式的数。

  • 精度问题:由于计算机内部的存储机制,浮点数的精度有限,可能出现误差。

  • 示例

    python
    price = 19.99          # 小数
    pi = 3.14159           # 常见的浮点数
    scientific_notation = 1.23e4 # 科学计数法表示,等价于 1.23 * 10^4
  • 常用操作:与整数的操作相同,不过浮点数除法结果为浮点数。

1.3 布尔值(bool)

  • 定义:布尔值只有 TrueFalse 两个值,通常用于逻辑判断。

  • 表达式:布尔值通常通过条件表达式得到,如 a > ba == b 等。

  • 示例

    python
    is_student = True          # 表示是否为学生
    has_scholarship = False     # 表示是否有奖学金
  • 常用操作

    • 与(and):True and False 返回 False
    • 或(or):True or False 返回 True
    • 非(not):not True 返回 False

1.4 字符串(str)

  • 定义:字符串是由字符组成的序列,通常用于表示文本信息。

  • 表示:可以使用单引号(')、双引号(")或三重引号('''""")定义。

  • 示例

    python
    name = "aini"            # 使用双引号
    greeting = 'Hello'       # 使用单引号
    long_text = """这是一个多行字符串
    可以换行显示"""
  • 常用操作

    • 字符串拼接:"Hello" + " World" -> "Hello World"
    • 重复:"Hi" * 3 -> "HiHiHi"
    • 取子串:"Hello"[1:4] -> "ell"
    • 常用方法:len("Hello")"hello".upper()"WORLD".lower()"Hello World".split()

2. 复合数据类型

复合数据类型包括列表(list)、元组(tuple)、字典(dict)和集合(set)。它们可以用来存储多个值,方便处理复杂的数据结构。

2.1 列表(list)

  • 定义:列表是一个有序的可变序列,可以存储多个元素,元素之间用逗号分隔。

  • 表示:列表使用方括号 [] 表示。

  • 示例

    python
    hobbies = ["阅读", "运动", "音乐"]     # 定义一个包含多个元素的列表
    numbers = [1, 2, 3, 4, 5]             # 定义一个数字列表
    mixed_list = ["aini", 23, True]       # 可以包含不同类型的元素
  • 常用操作

    • 访问元素:hobbies[0] -> "阅读"
    • 修改元素:hobbies[1] = "跑步"
    • 添加元素:hobbies.append("电影")
    • 删除元素:hobbies.remove("运动")
    • 列表切片:numbers[1:3] -> [2, 3]

2.2 元组(tuple)

  • 定义:元组是一个有序的不可变序列,一旦定义无法修改,通常用于存储不会改变的数据。

  • 表示:元组使用小括号 () 表示。

  • 示例

    python
    coordinates = (30.0, 50.0)          # 定义一个坐标元组
    personal_info = ("aini", 23, "上海") # 存储不可变的个人信息
    single_item_tuple = (42,)           # 包含一个元素的元组,后面需加逗号
  • 常用操作

    • 访问元素:coordinates[0] -> 30.0
    • 元组解包:x, y = coordinates -> x = 30.0, y = 50.0

2.3 字典(dict)

  • 定义:字典是一个无序的键值对集合,使用键(key)来访问对应的值(value),键必须是唯一的。

  • 表示:字典使用大括号 {} 表示,每个键值对用冒号 : 分隔。

  • 示例

    python
    student_info = {
        "name": "aini",
        "age": 23,
        "city": "上海",
        "university": "东华大学"
    }
  • 常用操作

    • 访问值:student_info["name"] -> "aini"
    • 修改值:student_info["age"] = 24
    • 添加键值对:student_info["major"] = "计算机科学"
    • 删除键值对:del student_info["city"]
    • 获取键集合:student_info.keys()
    • 获取值集合:student_info.values()

2.4 集合(set)

  • 定义:集合是一个无序、唯一的元素集合,主要用于去重和集合运算。

  • 表示:集合使用大括号 {} 表示,元素之间用逗号分隔,或使用 set() 函数创建空集合。

  • 示例

    python
    unique_numbers = {1, 2, 3, 4, 5, 5}  # 集合会自动去重
    empty_set = set()                    # 使用 set() 创建空集合
  • 常用操作

    • 添加元素:unique_numbers.add(6)
    • 删除元素:unique_numbers.remove(2)
    • 并集:set1 | set2
    • 交集:set1 & set2
    • 差集:set1 - set2
    • 对称差集:set1 ^ set2

3. 特殊数据类型:NoneType

  • 定义NoneType 是一个特殊的空值类型,只有一个值 None,用于表示“什么都没有”。

  • 用途None 常用于表示缺失值、空返回值等。

  • 示例

    python
    result = None  # 初始值为 None,表示还没有结果