如何在不被调用的情况下使 类 而不是 运行?
How to make classes not run without being called?
如何在不将 class 放在主函数后面的情况下阻止其执行,我需要 class 来执行程序。我只想在声明后使用 class。
代码示例:
class Hello:
print('this message should not have been displayed')
def main():
print('hello world')
main()
输出:
this message should not have been displayed
hello world
正如我们在 Python Documentation 中读到的那样,“class 定义是一个可执行语句” 所以如果你直接写 print("string")
,您会在输出中看到该字符串。
如果你想用class打印一个字符串,你必须在新的Class中创建一个方法,像这样:
class Hello:
def helloPrint():
print('this message should not have been displayed')
def main():
print('hello world')
main()
现在您的输出将是:
hello world
你可以打印 Hello class 消息,方法是在前面代码的末尾写入以下行:
h = Hello()
h.helloPrint()
你不能这样写...你必须把它放在构造函数的方法中
喜欢这个
class Hello():
def __init__(self):
print('this message should not have been displayed')
def main():
print('hello world')
main()
hello = Hello()
好的,虽然 "a class definition is an executable statement"
,但并非所有 class
语句都需要直接在模块内。还有这种模式:
def create():
class foo:
a = 1
print('Inside foo')
return foo
print('running')
C = create()
输出:
running
Inside foo
这会将 foo
的 execution
延迟到您选择的特定时间。
如何在不将 class 放在主函数后面的情况下阻止其执行,我需要 class 来执行程序。我只想在声明后使用 class。
代码示例:
class Hello:
print('this message should not have been displayed')
def main():
print('hello world')
main()
输出:
this message should not have been displayed
hello world
正如我们在 Python Documentation 中读到的那样,“class 定义是一个可执行语句” 所以如果你直接写 print("string")
,您会在输出中看到该字符串。
如果你想用class打印一个字符串,你必须在新的Class中创建一个方法,像这样:
class Hello:
def helloPrint():
print('this message should not have been displayed')
def main():
print('hello world')
main()
现在您的输出将是:
hello world
你可以打印 Hello class 消息,方法是在前面代码的末尾写入以下行:
h = Hello()
h.helloPrint()
你不能这样写...你必须把它放在构造函数的方法中 喜欢这个
class Hello():
def __init__(self):
print('this message should not have been displayed')
def main():
print('hello world')
main()
hello = Hello()
好的,虽然 "a class definition is an executable statement"
,但并非所有 class
语句都需要直接在模块内。还有这种模式:
def create():
class foo:
a = 1
print('Inside foo')
return foo
print('running')
C = create()
输出:
running
Inside foo
这会将 foo
的 execution
延迟到您选择的特定时间。