繁体   English   中英

如何在 Python 的 class 中打印一个属性?

[英]How to print one Attribute in a class in Python?

只是我有一个 class 具有在 class 示例中打印特定属性的方法:

class Attr:
    def __init__(self, name,
     wattage):
        self.name = name
        self.wattage = wattage
   
    def print_attr(self):
        print("attribute in class is " + getattr(Attr, wattage)

预期的 output 是:

attribute name is wattage: test

为此,您不需要帮助器 function,Python 没有受限访问。 只需直接访问属性:

a = Attr("Name", 10)

print(a.wattage)

如果你真的想做这样的打印方法,有两种方法:

class Attr:
    def __init__(self, name, wattage):
        self.name = name
        self.wattage = wattage
   
    def print_wattage(self):
        print(f'Wattage in *instance* is {getattr(self, "wattage")}')  # getattr gets by string name

    def print_name(self):
        print(f"Name in *instance* is {self.name}")

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM