由于Python中没有goto运算符,可以使用什么技术呢?
条件 如果是,则转到线程1,如果为false,则转到线程2 在线程中,我们做了一些小事,然后我们转到线程2,在那里进行所有其他操作。
答案 0 :(得分:14)
由于Python中没有goto运算符,可以使用什么技术呢?
在逻辑上和语义上构建代码。
if condition:
perform_some_action()
perform_other_actions()
答案 1 :(得分:6)
def thread_1():
# Do thread_1 type stuff here.
def thread_2():
# Do thread_2 type stuff here.
if condition:
thread_1()
# If condition was false, just run thread_2().
# If it was true then thread_1() will return to this point.
thread_2()
编辑:我假设“线程”是指一段代码(也称为子程序或函数)。如果您在并行执行中讨论线程,那么您将需要更多详细信息。
答案 2 :(得分:5)
据我所知,它不存在(谢天谢地),但你应该查看link
“goto”模块是4月1日发布的愚人节笑话 2004年。是的,它有效,但它仍然是一个笑话。请不要在实际代码中使用它!
答案 3 :(得分:2)
Python旨在支持良好的编码实践,而GOTO不是其中之一。如果使用不当,可能会导致程序逻辑不可读。
我建议以 Python方式学习您的程序代码,不要与其他编程语言一起使用(有时是坏的)习惯。请参阅Python文档,真正成熟的Python程序并学习。
答案 4 :(得分:0)
header_to_page = {}
with open("file.txt", "r") as f:
content = f.read()
pages = content.split("//")
for page in pages:
lines = page.split("\n")
header_to_page[lines[0]] = "".join(lines[1:])
print header_to_page["example line"]
这是我每次在Python 3.x中使用的。