gpt4 book ai didi

用于打印 bash 颜色的 python 类

转载 作者:行者123 更新时间:2023-12-05 01:13:27 24 4
gpt4 key购买 nike

我有可以打印到屏幕上的 python 脚本,有时我希望它们是粗体或绿色,有时是粗体和绿色。但我似乎无法弄清楚如何做到这两点。

class colortext():
def __init__(self, text:str):
self.text = text
self.ending = '\033[0m'

def bold(self):
return '\033[1m' + self.text + self.ending

def green(self):
return '\033[92m' + self.text + self.ending


print(colortext('hello').bold().green())

AttributeError: 'str' object has no attribute 'green'

最佳答案

因为您要在 boldgreen 方法中返回一个字符串。我认为您实际上想要返回对 colortext 对象本身的引用。所以修改那些方法中的文本并返回 self。此外,如果您希望它在 print 中调用它时打印字符串,请定义 __str__ 函数。试试:

class colortext():
def __init__(self, text:str):
self.text = text
self.ending = '\033[0m'

def __str__(self):
return self.text

def bold(self):
self.text = '\033[1m' + self.text + self.ending
return self

def green(self):
self.text = '\033[92m' + self.text + self.ending
return self

print(colortext('hello').bold().green())

关于用于打印 bash 颜色的 python 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60195210/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com