倒计时超过2周

2024-09-30 04:34:57 发布

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

我有一个计划,基本上是安排晚餐在我的家人。我想补充的是倒计时,我把一个日期,并在两个星期内重复一个事件,退出一个人在我的家人。到目前为止我已经做到了:

#Programa de Python para ver el reparto de cenas

import time

import datetime

from datetime import datetime, timedelta; #countdays

fecha = datetime.today () #hoy

quien =  'Pirulo'

while fecha <= datetime(2016, 3, 31): #condicion while loop

    nodays = fecha.weekday() #los dias en numeros

    if quien=='Pitulo':
        quien = 'Mengana'
    elif quien=='Mengana':
        quien = 'Fulana'
    elif quien=='Fulana':
        quien = 'Sultana'
    elif quien=='Sultana':
        quien = 'Pirulo'   

    if quien == 'Sultana' and (nodays == 1 or nodays == 3):
        quien = 'Fulana'

    print (fecha.strftime('%d/%m/%Y') + ': ' + quien + " /"+str(nodays)) #el out en la pantalla

    fecha += timedelta(days=1) #que al dia anterior le suma uno mas

我想要的是“富拉娜”在两个周末离开家。你知道吗


Tags: importdatetime家人deeltimedeltaenelif
2条回答

我所做的是:

if (nodays == 0):
    if findes == False:
        findes = True
    else:
        findes = False

所以在周一,变量会发生变化,如果变量为假:

if (nodays == 4 or nodays == 5 or nodays == 6) and findes == False:
    if cena3 == 'Jazmin':
        cena3 = 'Judith'
    elif cena3 == 'Judith':
        cena3 = 'Alejandro'
    elif cena3 == 'Alejandro':
        cena3 = 'Jazmin'

阿布里尔将被从家庭中剔除:D。我无法想象这是那么简单,我认为这是不可能的任务。。。你知道吗

如果我对你的问题理解正确的话,你是想让“Abril”每隔一周才轮换一次。您可以尝试创建一个条件,然后在每过一周时切换该条件的值。然后在条件为True时包含“Abril”,在条件为False时不包含她。比如:

condition = True  # your new condition
while ...:  # your main while loop
  nodays = fecha.weekday()

  # Switch condition on Sunday
  if nodays == 6:
    condition = not condition

  # Update quien
  if quien=='Ale':
    quien = 'Judith'
  elif quien=='Judith':
    quien = 'Jazmin'
  elif quien=='Jazmin':
    quien = 'Abril'
  elif quien=='Abril':
    quien = 'Ale'

  # Check if we are including 'Abril'
  if quien=='Abril' and not condition:  # replace 'Abril'
    quien = 'Ale'  # skip over 'Abril' for this rotation

  ...

也许这有帮助。如果这不是你要找的,请告诉我。你知道吗

相关问题 更多 >

    热门问题