-1
votes

Échantillon de la valeur voisine d'une liste

Disons, j'ai une liste: xxx

et je choisis aléatoirement l'index (disons IDX = 4, donc "May"), je veux que ma fonction retourne xxx

si l'index est 0 (janvier) ou 1 (février), je veux que ma fonction renvoie [janvier, février, mars, avril, mai] . La longueur de la liste retournée est toujours 5.

Comment créer une telle fonction dans Python3?

Question simple mais pourquoi ma tête commence à exploser?

Merci.


1 commentaires

Pourquoi sur Terre ma question a eu l'aversion?


3 Réponses :


1
votes

quelque chose comme ceci: xxx


1 commentaires

Si IDX = 11 Il renvoie [octobre, novembre, déc]. Comment retourner [août, sep, octobre, novembre, déc]?



1
votes
if index<=2 or :
   print(list[:5])
elif index>=len(list)-2:
   print(list[-5:])
else:
   print(list[index-2:index+2])

0 commentaires

0
votes
# List of months
months = ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"]
# Get input
index = int(input())

def getMonths(index):
  if index>1 and index<len(months)-2:
    # Return 5 elements in the neighbourhood of the index
    return months[index-2:index] + months[index:index+3]
  elif index<=1 and index>=0: 
    # Return first 5 if index less than 2
    return months[:5]
  elif index>len(months)-2:
    # Return last 5 elements if index greater
    return months[len(months)-5:]
  else:
    # Return -1 for invalid index
    return -1
# Print output
print(getMonths(index))

0 commentaires