我想实现类似于返回os.get_terminal_size
print(myFunction())
myFunction(a=1, b=2)
print(myFunction().a) # 1
print(myFunction().b) # 2
示例:
import os
os.get_terminal_size()
'os.terminal_size(columns=169, lines=40)'
os.get_terminal_size().columns
169
type(os.get_terminal_size)
'<class 'os.terminal_size'>'
我该怎么做?
答案 0 :(得分:2)
type(os.get_terminal_size)
表明它是一个类,而不是函数。
第一行还显示它具有方法__str__
以显示带有值的格式化文本
class MyClass:
def __init__(self):
self.columns = 169
self.lines = 40
def __str__(self):
return 'MyClass(columns={}, lines={})'.format(self.columns, self.lines)
print(MyClass())
# MyClass(columns=169, lines=40)
print(MyClass().columns)
# 169
编辑:
它也没有参数,但是如果要参数,则需要
class MyClass:
def __init__(self, columns=169, lines=40):
self.columns = columns
self.lines = lines
def __str__(self):
return 'MyClass(columns={}, lines={})'.format(self.columns, self.lines)
print(MyClass())
# MyClass(columns=169, lines=40)
print(MyClass(columns=1, lines=2))
# MyClass(columns=1, lines=2)
但是它不能保留值-它需要类的实例才能保留它们。
print(MyClass(columns=1, lines=2).columns)
# 1
print(MyClass().columns)
# 169
my_instance = MyClass(columns=1, lines=2)
print(my_instance.columns)
# 1
答案 1 :(得分:0)