You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中类与成员属性访问:如何访问Project对象的成员属性

如何访问Python中Project类的成员属性?

嘿,刚学Python遇到类属性访问的问题对吧?别担心,我给你一步步讲清楚~

首先得明确:要访问类的实例成员属性,确实得先创建类的实例(也就是你说的Project对象)。我先给你补全一个带属性的Project类示例,方便你对照理解:

class Project(object):
    # 初始化方法,用来给每个实例绑定专属属性
    def __init__(self, project_name, total_budget):
        self.name = project_name  # 实例属性:项目名称
        self.budget = total_budget  # 实例属性:项目预算

第一步:创建Project对象(实例)

先通过类名加括号的方式,创建一个具体的Project实例:

# 创建一个名为"电商系统重构"、预算80000的项目实例
my_ecommerce_project = Project("电商系统重构", 80000)

第二步:访问成员属性的两种常用方式

1. 直接用点号(.)访问(最常用)

这是Python中访问实例属性最直观的方式,直接在实例后面加.再加属性名就行:

# 读取name属性
print(my_ecommerce_project.name)  # 输出: 电商系统重构
# 读取budget属性
print(my_ecommerce_project.budget)  # 输出: 80000
# 还可以直接修改属性值
my_ecommerce_project.budget = 95000
print(my_ecommerce_project.budget)  # 输出: 95000

2. 使用getattr()函数访问(适合动态场景)

如果你的属性名是存放在变量里的,或者想在属性不存在时返回默认值避免报错,就可以用这个内置函数:

# 把属性名存在变量里,动态获取
target_attr = "name"
print(getattr(my_ecommerce_project, target_attr))  # 输出: 电商系统重构

# 属性不存在时返回默认值,不会抛出AttributeError
print(getattr(my_ecommerce_project, "duration", "未设置项目周期"))  # 输出: 未设置项目周期

额外补充:类属性的访问

如果是属于类本身的属性(不是每个实例专属的),不用创建实例也能访问,当然通过实例也能访问:

class Project(object):
    # 类属性:所有项目的默认状态
    default_status = "进行中"
    
    def __init__(self, name, budget):
        self.name = name
        self.budget = budget

# 直接通过类访问类属性
print(Project.default_status)  # 输出: 进行中
# 通过实例访问类属性
my_project = Project("测试项目", 30000)
print(my_project.default_status)  # 输出: 进行中

内容的提问来源于stack exchange,提问作者aws pivotal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.20 11:28:50