À titre d'exemple, j'écrirai un FizzBuzz usé en notation d'inclusion de liste pythonique. Une vraie doublure.
def fizzbuzz(N):
"""Implémentation de FizzBuzz en notation d'inclusion de liste
Example:
>>> print fizzbuzz(10)
[1, 2, 'Fizz', 4, 'Buzz', 'Fizz', 7, 8, 'Fizz', 'Buzz']
>>> print fizzbuzz(30)
[1, 2, 'Fizz', 4, 'Buzz', 'Fizz', 7, 8, 'Fizz', 'Buzz', 11, 'Fizz', 13, 14, 'FizzBuzz', 16, 17, 'Fizz', 19, 'Buzz', 'Fizz', 22, 23, 'Fizz', 'Buzz', 26, 'Fizz', 28, 29, 'FizzBuzz']
"""
return [(i%3==0)*'Fizz' + (i%5==0)*'Buzz' or i for i in range(1, N+1)]
point
(i% 3 == 0) * 'Fizz'
détermine s'il faut ajouter une chaîne en fonction de la vérité entre parenthèses.Recommended Posts