字典 与 Python 对象 的总结

字典 与 Python 对象 的总结

一、本质(最核心)

1. 字典(dict)

字典是 Python 自带的一种"数据结构"

用来存 key: value 键值对。

它长得有标志性:

python 复制代码
{ "key": value }

2. 对象(Object)

Python 里一切皆对象!

数字、字符串、函数、类实例、SimpleNamespace......全都是对象。

比如:

能使用 .属性 的对象

python 复制代码
obj.name
obj.raw_text

二、字典(dict)总结

1. 长什么样

python 复制代码
{
    "name": "小明",
    "age": 20,
    "raw_text": "文本内容"
}

标志性符号:大括号 {}

2. 创建方式(全部)

① 字面量(最常用)

python 复制代码
d = {"name": "小明"}

② 空字典,后赋值

python 复制代码
d = {}
d["name"] = "小明"

③ dict() 函数

python 复制代码
d = dict(name="小明")

④ 可迭代对象创建

python 复制代码
d = dict([("name", "小明")])

3. 取值 / 赋值

必须用:方括号 ["key"]

python 复制代码
d["raw_text"]      # 取值
d["raw_text"] = 新值  # 赋值

4. 绝对不能做

python 复制代码
d.raw_text  # ❌ 报错:字典没有 . 属性

5. 特点

  • 属于数据容器
  • 用来存结构化数据
  • key 必须是不可变类型(字符串、数字等)
  • 只能用 \[\] 访问

三、对象(Object)总结

1. 什么是对象

Python 中所有东西都是对象

字典也是Python对象~

2. 能使用 .属性 的对象有哪些

① 类创建的对象(最标准)

python 复制代码
class Person:
    pass

p = Person()
p.name = "小明"
p.raw_text = "文本"

② 带构造函数的类对象

python 复制代码
class Person:
    def __init__(self, name):
        self.name = name

p = Person("小明")

③ SimpleNamespace 对象(官方简易对象)

python 复制代码
from types import SimpleNamespace
p = SimpleNamespace(name="小明")

④ 模块、函数、字符串、列表......全是对象

只是它们不一定能随便加 .属性

3. 对象取值 / 赋值

必须用:点 .

python 复制代码
obj.raw_text      # 取值
obj.raw_text = 新值 # 赋值

4. 绝对不能做

python 复制代码
obj["raw_text"]  # ❌ 报错:对象不能用 []

5. 对象的本质

  • 是实例
  • 拥有 属性 + 方法
  • 用 . 访问成员
  • 不是数据结构,是"实例"

四、字典 VS 对象 对比表

项目 字典 dict 对象 Object
外观符号 大括号 {} 无括号
访问方式 dict["key"] obj.key
创建方式 {}, dict() 类实例、SimpleNamespace
是否需要导入 不需要,Python 原生 类要定义,SimpleNamespace 需要导入
内部结构 key-value 映射表 属性存储在 dict 中
错误访问方式 dict.key → AttributeError obj["key"] → TypeError
本质 数据结构,用于存储数据 类的实例,表示一个"东西/实体"
灵活性 key 可随时增删 属性可动态增加(大部分对象)
你之前的报错 把字典当对象用 → 报错 无
相关推荐
海绵宝宝转agent7 小时前
learn-claude-code第1-5章开源学习笔记分享
人工智能·笔记·python·学习
小奇不哭7 小时前
ROS2 单节点,RGB-D 深度相机局部路径提取 + B 样条平滑路径 + YOLOv8 障碍物检测 + 深度测距,用于移动机器人视觉局部循迹。
python·yolov8·ros2·cv2·路径探索循迹
小小龙学IT7 小时前
Python scikit-learn 机器学习库深度解析
python·机器学习·scikit-learn
2601_962071578 小时前
类变量和全局变量的查找路径有什么区别?
开发语言·python
卷无止境9 小时前
独立开发者的"富矿地带":哪些垂直领域值得你押注一辈子?
后端·python
Java后端的Ai之路9 小时前
Python进阶探索29_eval内置函数
开发语言·python·探索·eval·内置函数
计算机毕业编程指导师9 小时前
计算机毕设选题推荐:基于Hadoop与Spark的Steam游戏数据分析系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 深度学习
大数据·hadoop·python·计算机·spark·毕业设计·steam游戏
计算机毕业编程指导师9 小时前
【计算机毕设选题推荐】基于Hadoop+Spark的白鹿抖音评论大数据分析与可视化系统源码 毕业设计 选题推荐 毕设选题 数据分析 机器学习 深度学习
大数据·hadoop·python·计算机·spark·毕业设计·抖音评论
Zootopia6269 小时前
飞行力学知识梳理1|飞行性能与稳定性
人工智能·python·算法·机器学习·无人机·学习方法·信息与通信
Y3815326629 小时前
搜索 API 延迟优化:并发数、超时与超时的真实代价
python·搜索引擎