【发布时间】:2015-06-23 17:10:30
【问题描述】:
正如标题所说,如何调用另一个程序的一个类中的函数?
类.py
class Object:
def __init__(self, mood):
self.__mood = mood
def set_mood(self, mood):
self.__mood = mood
def check_mood(self):
if random.randint(1, 3) == 1:
self.__mood = 'happy'
elif random.randint(1, 3) == 2:
self.__mood = 'hungry'
elif random.randint(1, 3) == 3:
self.__mood = 'sleepy'
def get_mood(self):
return self.__mood
生成器.py
from test import Object
import test
mood = 'happy'
ani = Object.test(mood)
print("This is your mood: " + get_mood())
心情被设置为“快乐”的默认值。我需要根据测试中的随机整数滚动进行更改,以便在显示情绪时,它并不总是显示为“快乐”
【问题讨论】:
-
你能说得清楚一点吗?就不能用check_mood方法来改变心情吗?
-
这段代码非常...不一致,至少可以这么说。
-
什么是
Object.test()? -
Object.test()来自哪里?ani是做什么用的?为什么从未使用过check_mood?应该使用class Object的实例调用get_mood()。我想你可能不明白类的静态函数和成员函数之间的区别。 -
@Saicharan S M,这就是我想要弄清楚的。我猜在调用没有帮助之前有默认值。所以我改了这个:
def __init__(self): self.__mood = 'happy'现在默认值设置好了,check_mood(self)应该改心情,但是不知道有没有,因为我打印的时候改成:print("This is your mood: " mood.get_mood()),但是心情仍然没有改变