【问题标题】:How to print an attribute of an object from within a list如何从列表中打印对象的属性
【发布时间】:2023-01-11 17:16:11
【问题描述】:

如果我在 Python 中有一个包含具有类属性的对象的列表,我如何打印对象列表但仅打印特定属性?

例如:

我有一个具有 NAME 属性的对象,其中 NAME = to Cat。 我有另一个对象,其 NAME 属性为 = to Dog。

  • 两个对象都在一个列表中,我想打印所有对象。NAME只要

这是一些示例代码(非常糟糕且编写速度很快)

class play_object():
    def __init__(self, weight, size, name):
        self.weight = weight
        self.size = size
        self.name = name

objects = []

car = play_object(6, 10, "Car")
cat = play_object(0.5, 1, "Cat")

objects.append(car)
objects.append(cat)

print(objects)

这输出:

[<__main__.play_object object at 0x000001D0714053D0>, <__main__.play_object object at 0x000001D0712ACF90>]

将代码修改为:

print(objects.name)

输出结果:

Traceback (most recent call last):
  File "C:/Users//AppData/Local/Programs/Python/Python311/Test2.py", line 15, in <module>
    print(objects.name)
AttributeError: 'list' object has no attribute 'name'

那么从列表中的对象打印所选属性的正确方法是什么?

【问题讨论】:

标签: python list class object attributes


【解决方案1】:

当您创建汽车和猫作为类 play_object 的对象时,使用带有属性的对象名称来获取数据

print(car.name)
print(cat.name)

而不是使用:

print(object.name)

由于对象是列表

【讨论】:

    猜你喜欢
    • 2014-12-19
    • 1970-01-01
    • 1970-01-01
    • 2020-08-28
    • 2020-01-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-03
    相关资源
    最近更新 更多