Python 我在这方面是新手,我正试图弄清楚如何使用计时器和循环。我正试着用定时器来循环这个过程。你能帮助我吗?

Python 我在这方面是新手,我正试图弄清楚如何使用计时器和循环。我正试着用定时器来循环这个过程。你能帮助我吗?,python,loops,timer,python-2.x,Python,Loops,Timer,Python 2.x,在这个答案中,我假设你想随着计时器的前进而移动问号,中间有三秒钟的间隔 这段代码几乎需要完全重写。别担心,这还不算太糟,而且很容易修复 这里的第一个错误是您没有为time.sleep()导入时间模块。为此,您只需在代码顶部添加导入时间。其次,您不需要在代码中使用abs(),Python也不理解它。第三,当您使用for循环或任何循环时,它会在一次迭代中执行整个过程,然后返回到下一次的开始,因此计时器每次都会打印所有这些内容。它并没有等待使其流动,它只是每三秒打印一块瓷砖。 在您当前的级别,我将使用

在这个答案中,我假设你想随着计时器的前进而移动问号,中间有三秒钟的间隔

这段代码几乎需要完全重写。别担心,这还不算太糟,而且很容易修复

这里的第一个错误是您没有为
time.sleep()
导入时间模块。为此,您只需在代码顶部添加导入时间。其次,您不需要在代码中使用
abs()
,Python也不理解它。第三,当您使用for循环或任何循环时,它会在一次迭代中执行整个过程,然后返回到下一次的开始,因此计时器每次都会打印所有这些内容。它并没有等待使其流动,它只是每三秒打印一块瓷砖。 在您当前的级别,我将使用一个简单的if和一个变量来测试它是哪个迭代,因为您可能还不知道如何拼接。这是:

for i in xrange(5):
  abc()
  time.sleep(3)
  print('?~~~~~')
  print('~?~~~~')
  print('~~?~~~')
  print('~~~?~~')
  print('~~~~?~')
  print('~~~~~?')
  print('?~~~~~')
  print('~?~~~~')
  print('~~?~~~')
  print('~~~?~~')
  print('~~~~?~')
  print('~~~~~?')
这是使用拼接的版本

import time # importing time so time.sleep() works properly
iteration = 1 # Code to tell where the question mark is
for i in xrange(5):
    time.sleep(3)
    if iteration == 1: # asking if the variable is 1
        print('?~~~~~') # printing this
        iteration += 1 # adding one to the iteration variable
    elif iteration == 2:
        print('~?~~~~')
        iteration += 1
    elif iteration == 3:
        print('~~?~~~')
        iteration += 1
    elif iteration == 4:
        print('~~~?~~')
        iteration += 1
    elif iteration == 5:
        print('~~~~?~')
        iteration += 1
    elif iteration == 6:
        print('~~~~~?')
        iteration = 1
如果你想要一个教程,我推荐的就是


否则,原始Python教程就很棒了:

寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现它所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请看:如何创建一个最小的、完整的、可验证的示例。这个主题很有趣,但我认为您应该详细说明您的问题,并具体说明您想要知道的内容。
import time
iteration = 1
list = list('~~~~~~')
old_list = list
for i in xrange(5):
    time.sleep(3)
    list[iteration-1] = '?'
    print("".join(list))
    list = list('~~~~~~')
    if iteration == 6:
        iteration = 1
    else:
        iteration += 1