字典 与 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 可随时增删 属性可动态增加(大部分对象)
你之前的报错 把字典当对象用 → 报错
相关推荐
微软技术分享几秒前
使用Masscan扫描器进行信息搜集
python·masscan·信息搜集
青 春 记 忆2 分钟前
零基础入门python23:Flask-Login登录、退出与会话
python·flask·后端开发
微小冷32 分钟前
Python图论库NetworkX初步
开发语言·python·图论·graph·networkx·digraph
Data_Journal1 小时前
如何使用 Python 抓取 Google Flights:分步指南
大数据·开发语言·数据库·python·scrapy
你我一见如故2 小时前
仿QQ音乐桌面客户端——测试报告
python·selenium
Kismet_nvi2 小时前
Python 基础核心知识点总结
开发语言·windows·python
2401_844582952 小时前
冷门技巧:AI模型可靠性测试的实用技巧:数
python
you鬰2 小时前
datawhale--llm-algo-leetcode5️⃣
python·datawhale
λqaq72 小时前
MySQL 数据库基础(2)约束、用户权限、远程连接、外键与 TCP/UDP 理解
linux·数据库·python·tcp/ip·mysql
人工干智能2 小时前
科普:pandas 时间偏移别名:ts.resample(“5Min“).sum()
python·pandas