在该程序中,输出不是我期望的:
_id: ObjectId("5cb026cdd1971d0700363b4f");
number: 1
decks: Array
0: Object
_id: ObjectId("123asdaad71d0700363b4f");
number: 1
status: "Away"
away: Array
0: Object
tenant: "iko"
status: "Vacant"
1: Object
_id: ObjectId("123asdaad71d0700363b4f");
number: 2
status: "Vacant"
away: null
相反,它什么也不输出。这是整个输出:
class example(object):
def __init__(self, foo,bar):
self.foo = foo
self.bar = bar
def what_are_you():
print(foo,bar)
print("This doesn't work either")
a = example("aaa","bbb")
a.what_are_you
#should return "aaa bbb"
print(a.what_are_you)
print(a.foo,a.bar)
答案 0 :(得分:1)
通过不包括括号,您可以打印函数对象,而不是调用函数。要调用该函数,请在其后加上括号。
print(a.what_are_you())
将打印what_are_you()
的值(无论return
语句中的值)
答案 1 :(得分:0)
正如我现在所看到的,您正在打印内容,而不是return
正在打印内容,因此您可能需要使用:
a.what_are_you()
在函数中,您需要使用self
来获取变量:
def what_are_you(self):
print(self.foo,self.bar)
print("This doesn't work either")