Python等待

2024-04-19 23:08:02 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图找到一个好的代码行来让python在执行下一个代码块之前等待,但是我发现没有任何工作。下面是以下代码的示例:

#This is the eighth Question.
print "Q8. What is one of the main bosses in 'Super Smash Brothers Brawl' that is also a boss in 'Kirby the Amazing Mirror?'"
print "1) Krazy hand."
print "2) Mister hand."
print "3) Ganondorf."
print "4) Yoshi."
choice = input("Answer=")
if choice ==1:
        print "THAT IS INCORRECT! 'Krazy hand' is SUPPOSED to be spelled 'Crazy hand'!"
        print ""
elif choice ==2:
        print "INCORRECT! 'Mister hand' is supposed to be spelled 'Master hand'!"
        print ""
elif choice ==3:
        print "Ganondorf is in the LEGEND OF ZELDA!"
        print ""
elif choice ==4:
        print "Yoshi isn't in Kirby!!!"
        print ""
elif choice> 4 or choice < 1:
        print "Go away if you want to fail."
        print ""

我希望'wait'代码在执行下面的代码之前等待10秒。在

^{pr2}$

谢谢!非常感谢所有的帮助!在

更新1: 以下是所有代码:

#This is the script for TUKT. DO NOT DELETE
score = 0
print ""
print "Welcome to the Ultimate Kirby Test."
print ""
print "Type 'yes' to begin. Type 'no' to quit. Type 'info' for how to play."
print ""
begin = (raw_input("Would you like to begin?:"))
if begin == "yes":
        print ""
        print "Alright then! Let's start, shall we?"
if begin == "no":
        quit()
if begin == "info":
        print ""
        print "Type the number of the answer that you think is correct after 'Answer='. Sometimes, ULTRA QUESTIONs will pop up. These are worth 3 points!! At the end of the test, I will show you your score. You must get over 7 right to pass. Good luck!"
#This is the first Question.
print "Q1. What color is Kirby?"
print "1) Black."
print "2) Blue."
print "3) Pink."
print "4) Technically, his color changes based on the opponent he swallows."
choice = input("Answer=")
if choice ==1:
        print ""
        print "Incorrect."
        print ""
elif choice ==2:
        print ""
        print "Incorrect."
        print ""
elif choice ==3:
        print ""
        print "Tee hee.... I fooled you!"
        print ""
elif choice ==4:
        print ""
        print "Nice job! You saw through my trick!"
        print ""
        score = score+1
elif choice > 4 or choice < 1:
        print ""
        print "That is not a valid answer."
        print ""
#This is the second Question.
print "Q2. Who turns Kirby into yarn? (Kirby's Epic Yarn)"
print "1) Elmo."
print "2) The terrible cotton wizard named the yarn lord."
print "3) A magician named Yin-Yarn."
print "4) King Dedede."
choice = input("Answer=")
if choice ==1:
        print ""
        print "Don't be silly. Elmo is copyrighted!"
        print ""
elif choice ==2:
        print ""
        print "I can't believe you fell for that!"
        print ""
elif choice ==3:
        print ""
        print "Nicely done!"
        print ""
        score = score+1
elif choice ==4:
        print ""
        print "Ha! Nice try."
        print ""
elif choice > 4 or choice < 1:
        print ""
        print "You have got to be joking."
        print ""
#This is the third Question.
print "Q3. Who is the villan in Kirby's Adventure?"
print "1) King Dedede."
print "2) The Nightmare."
print "3) Meta Knight."
print "4) All of the above."
choice = input("Answer=")
if choice ==1:
        print ""
        print "Too bad!"
        print ""
elif choice ==2:
        print ""
        print "I tricked you! Muahahaha!"
        print ""
elif choice ==3:
        print ""
        print "FALSE!!"
        print ""
elif choice ==4:
        print ""
        print "Let me think...................YES!"
        print ""
        score = score+1
elif choice > 4 or choice < 1:
        print ""
        print "You despise me."
        print ""
#This is the fourth Question.
print "Q4. In which game can Kirby combine the powers of his enemies?"
print "1) Kirby's Dream Land 2."
print "2) Kirby 64: The Crystal Shards."
print "3) Kirby and the seven stones."
print "4) Kirby Nightmare in Dreamland."
choice = input("Answer=")
if choice ==1:
        print ""
        print "Nope. Sorry!"
        print ""
elif choice ==2:
        print ""
        print "Yes! That is correct! Nicely done!"
        print ""
        score = score+1
elif choice ==3:
        print ""
        print "That isn't even a real game! (hence not capitalizing it.)"
        print ""
elif choice ==4:
        print ""
        print "No. You should be more knowledgable about Kirby games!"
        print ""
elif choice> 4 or choice < 1:
        print ""
        print "Hmph! You should actually 'try' next time!"
        print ""
#This is the fifth Question.
print "Q5. ULTRA QUESTION! There was a voting poll to see the top ten Kirby games! Which one do you think came up on top? The choices are:   Kirby 64 The Crystal Shards,  Kirby's Epic Yarn,  Kirby Super Star Ultra,  Kirby's Return to Dream Land,  Kirby and The Amazing Mirror,  Kirby Squeak Squad,  Kirby Air Ride,  Kirby's Dream Land 2, Kirby's Dream Land 3. Please type your guess in all LOWERCASE LETTERS and NO SPACES and NO PUNCTUATION! DO NOT SPELL IT WRONG. IF YOU DO, THE QUESTIONS WILL GO ON. Start!"
print ""
begin = (raw_input("What is your guess?:"))
if begin == "kirby64thecrystalshards":
        print ""
        print "Sorry that is incorrect."
        print ""
if begin == "kirbysepicyarn":
        print ""
        print "Sorry that is incorrect."
        print ""
if begin == "kirbysuperstarultra":
        print ""
        print "Sorry that is incorrect."
        print ""
if begin == "kirbysreturntodreamland":
        print ""
        print "Hurrah! You got it correct!"
        print ""
        score = score+3
if begin == "kirbyandtheamazingmirror":
        print ""
        print "Sorry that is incorrect."
        print ""
if begin == "kirbysqueaksquad":
        print ""
        print "Sorry that is incorrect."
        print ""
if begin == "kirbyairride":
        print ""
        print "Sorry that is incorrect."
        print ""
if begin == "kirbysdreamland2":
        print ""
        print "Sorry that is incorrect."
        print ""
if begin == "kirbysdreamland3":
        print ""
        print "Sorry that is incorrect."
        print ""
#This is the sixth Question.
print "Q6. Identify the picture!"
print ""
print ""
print ""      
print "   ------------------ "
print "  /                  \ "
print " |                    | "
print " |        | |         |"
print " |                    |"
print "  \                  / "
print "  /------------------\  "
print " |_______/   \________| "
print ""
print "1) A Kirby."
print "2) A walking box."
print "3) ?"
print "4) My mom."
choice = input("Answer=")
if choice ==1:
        print "FAIL!!! A Kirby has arms!"
        print ""
elif choice ==2:
        print "That is correct! It's not a Kirby because it doesn't have arms!"
        print ""
        score = score+1
elif choice ==3:
        print "No. That is incorrect. No points for you!"
        print ""
elif choice ==4:
        print "By the way, THAT IS NOT YOUR MOM!"
        print ""
elif choice> 4 or choice < 1:
        print "Wow. Really?"
        print ""
#This is the seventh Question.
print "Q7. Meta Knight really is:"
print "1) A Kirby."
print "2) A robot."
print "3) A Waddle Dee."
print "4) None of the above."
choice = input("Answer=")
if choice ==1:
        print "Nice try. YOU ARE CORRECT!"
        print ""
        score = score+1
elif choice ==2:
        print "INCORRECT! Nice try."
        print ""
elif choice ==3:
        print "HA! No way."
        print ""
elif choice ==4:
        print "Heh! It seems as if I have fooled you!"
        print ""
elif choice> 4 or choice < 1:
        print "Why don't you read the instructions next time?"
        print ""
#This is the eighth Question.
print "Q8. What is one of the main bosses in 'Super Smash Brothers Brawl' that is also a boss in 'Kirby the Amazing Mirror?'"
print "1) Krazy hand."
print "2) Mister hand."
print "3) Ganondorf."
print "4) Yoshi."
choice = input("Answer=")
if choice ==1:
        print "THAT IS INCORRECT! 'Krazy hand' is SUPPOSED to be spelled 'Crazy hand'!"
        print ""
elif choice ==2:
        print "INCORRECT! 'Mister hand' is supposed to be spelled 'Master hand'!"
        print ""
elif choice ==3:
        print "Ganondorf is in the LEGEND OF ZELDA!"
        print ""
elif choice ==4:
        print "Yoshi isn't in Kirby!!!"
        print ""
elif choice> 4 or choice < 1:
        print "Go away if you want to fail."
        print ""
time.sleep(10)
print ""
other = (raw_input("Would you like to continue without choosing a answer?:"))
if other == "yes":
        print "Haha! Nicely done! None of those answers were correct! This was a ULTRA QUESTION in disguise!"
        print ""
        score = score+3
if other == "no":
        print "Well, we have to move on anyway. Too bad you didn't say yes......."
        print ""
#This is the ninth question.
print "THIS IS A SAMPLE QUESTION."
print ""
quit()
#DELETE THE UPPER 3 LINES OF CODE.

Tags: thetoinyouifthatisthis
2条回答

@boatofturtles

重要免责声明

这不是你在这个问题中所问问题的答案,所以请保留你选择的答案,回答什么Remoltenreplied,因为这是你所问问题的正确答案和你的措辞方式

如果你不遵守上述免责声明,我将删除我的答案。已警告您:-D


免责声明说,经过一番挖掘和阅读了你正在做的与这个游戏相关的另外两个问题(https://stackoverflow.com/questions/22889223/how-to-prompt-the-user-in-10-seconds-if-nothing-is-entered-in-python-on-machttps://stackoverflow.com/questions/22889477/how-to-ask-a-person-for-input-but-running-a-whole-different-line-of-code-after-5这两个问题已经被合法地阻止了)我找到了一些我确信能按你想要的方式工作的代码(我使用的是MacBook Air的Python2.7和MacOSX10.9.2),代码是基于this answer,它,正如我在对one of your other questions的评论中所提到的,必须在Mac中工作(而且确实如此)。在

我之所以贴出这篇文章(尽管根据堆栈溢出的术语和预期用途,它可能有点错误)是因为你让我想起了我写的第一个程序。。。15年前。这是一个选择游戏,和你想做的非常相似(事实上,我甚至没有调用d*mn函数:-d),它让我感到怀旧。你想做的是一个很好的锻炼,我不想让你气馁。编程非常有趣,Python是一种很好的语言。在

请尝试理解我发布的代码中发生了什么(对于初学者,请查看sys和{a9}模块的文档)。只有这样才能变得更好。谷歌和阅读,阅读和练习。在

另外,一个很好的工具可以让人们告诉你如何提高你的编码技能,它是在https://codereview.stackexchange.com/中发布你的代码,在那里创建一个帐户,询问你如何改进你的代码。在

最后一件事:

当您在堆栈溢出(或任何其他stackexchange.com网站网站)花点时间准确地解释你的问题。A不起作用。。。它坏了。。。布鲁克林!!给我看看解决办法!!对任何人都没有帮助(好吧,这并不是说你做到了,但是你必须认识到,关于Kirby游戏的第一个问题非常令人困惑)。在

请记住,S.O.(StackOverflow)是一个非常有名的网站,它的答案多次出现在Google的第一个结果中。如果你能正确地表达你的问题,你将得到更好的答案,你将帮助其他人面对同样的问题在未来。在

堆栈溢出中有很多天才(是的,不是我,但我知道有!!免费回答每个人(我是说那些在维基百科上有关于他们的文章的家伙,aight?)。S、 如果你使用得好,O.是一个很好的资源(阅读thisthis并关注meta来了解StackOverflow网络中的网络礼仪)

好吧,关于我老朋友的故事够了,代码如下:

#!/usr/bin/env python

import sys, select

def timeout_input(message, timeout=10):
    print "You have %s seconds to answer!" % timeout
    if message:
        sys.stdout.write(message)
        sys.stdout.flush()
    i, o, e = select.select( [sys.stdin], [], [], timeout )
    if (i):
        return sys.stdin.readline().strip()
    return ""

#   -
score = 0

# @boatofturtles, put your other 7 questions
#  - HERE  -
# (I didn't want to copy all your code again)

#This is the eighth Question.
print "Q8. What is one of the main bosses in 'Super Smash Brothers Brawl' that is also a boss in 'Kirby the Amazing Mirror?'"
print "1) Krazy hand."
print "2) Mister hand."
print "3) Ganondorf."
print "4) Yoshi."
choice = timeout_input("Answer=", timeout=5)
if not(choice):
    print ""
    other = (raw_input("Would you like to continue without choosing a answer?:"))
    if other == "yes":
            print "Haha! Nicely done! None of those answers were correct! This was a ULTRA QUESTION in disguise!"
            print ""
            score = score+3
    if other == "no":
            print "Well, we have to move on anyway. Too bad you didn't say yes......."
            print ""    
elif int(choice) ==1:
        print "THAT IS INCORRECT! 'Krazy hand' is SUPPOSED to be spelled 'Crazy hand'!"
        print ""
elif int(choice) ==2:
        print "INCORRECT! 'Mister hand' is supposed to be spelled 'Master hand'!"
        print ""
elif int(choice) ==3:
        print "Ganondorf is in the LEGEND OF ZELDA!"
        print ""
elif int(choice) ==4:
        print "Yoshi isn't in Kirby!!!"
        print ""
elif int(choice)> 4 or int(choice) < 1:
        print "Go away if you want to fail."
        print ""

如果您最初在5秒钟内没有提供答案,然后您对问题yes进行答复Would you like to continue without choosing a answer?,您将得到以下输出:

^{pr2}$

如果要在不执行任何代码的情况下等待:

import time #Put this at the top of the script

time.sleep(10) #Put in the amount seconds

相关问题 更多 >