[Python] Interview per lavoro su python (e django)
Giovanni Porcari
giovanni.porcari a softwell.it
Gio 7 Set 2017 15:36:39 CEST
> Il giorno 07 set 2017, alle ore 15:05, Pietro Brunetti <gunzapper a gmail.com> ha scritto:
>
> Molto spartano, ci sarà di meglio, ma penso sia abbastanza ideomatico:
>
> """
> In [1]: initial_data = [(3,'alice'),(7,'bob'),(11,'charlie')]
>
> In [2]: prime_by_name = {k:v for v, k in initial_data}
>
> In [3]: prime_by_name
> Out[3]: {'alice': 3, 'bob': 7, 'charlie': 11}
>
> In [4]: for num in range(1, 100): # si può fare la doppia list comprehension
> ...: out = [name for name, prime in prime_by_name.items()
> ...: if not num % prime]
> ...: if out:
> ...: print(''.join(out))
> ...: else:
> ...: print(num)
> …:
Bello !
G
>
> 1
> 2
> alice
> 4
> 5
> alice
> bob
> 8
> alice
> 10
> charlie
> alice
> 13
> bob
> alice
> 16
> 17
> alice
> 19
> 20
> bobalice
> charlie
> 23
> alice
> 25
> 26
> alice
> bob
> 29
> alice
> 31
> 32
> alicecharlie
> 34
> bob
> alice
> 37
> 38
> alice
> 40
> 41
> bobalice
> 43
> charlie
> alice
> 46
> 47
> alice
> bob
> 50
> alice
> 52
> 53
> alice
> charlie
> bob
> alice
> 58
> 59
> alice
> 61
> 62
> bobalice
> 64
> 65
> alicecharlie
> 67
> 68
> alice
> bob
> 71
> alice
> 73
> 74
> alice
> 76
> bobcharlie
> alice
> 79
> 80
> alice
> 82
> 83
> bobalice
> 85
> 86
> alice
> charlie
> 89
> alice
> bob
> 92
> alice
> 94
> 95
> alice
> 97
> bob
> alicecharlie
>
> """"
>
>
> Il giorno 7 settembre 2017 13:48, Giovanni Porcari <giovanni.porcari a softwell.it> ha scritto:
>
> > Il giorno 07 set 2017, alle ore 11:02, Carlo Miron <miron a python.it> ha scritto:
> >
> > 2017-09-07 0:58 GMT+02:00 Karim <lemieliste a gmail.com>:
> >
> >> 2017-09-06 8:25 GMT+10:00 Riccardo Magliocchetti
> >> <riccardo.magliocchetti a gmail.com>:
> >>>
> >>> Nel primo caso per profili junior anni fa chiedevo tra le altre queste
> >>> due:
> >>> - quale linguaggi conosci di più e quanto bene da 1 a 10
> >>> - fizzbuzz in che linguaggio preferisci
> >>
> >> Fantastico, non conoscevo fizzbuzz. Ho provato a farlo e ho salvato la
> >> faccia, allora ho proposto lo stesso esercizio sul gruppo facebook...
> >> diciamo che ha acceso gli animi :D
> >
> > E così parte il golfing sulla soluzione più breve. la mia è
> >
> > ("Fizz"*(not x%3)+"Buzz"*(not x%5) or x for x in itertools.count(1))
>
>
>
> Elegante :)
>
> Ma ora il superfizzbuzz:
>
> data un array arbitrario di numeri primi associati ad altrettante parole,
> scrivere l'algoritmo che, nell'enumerazione sostituisca al numero primo e ai suoi multipli
> la parola assegnata e nel caso un numero sia multiplo di più numeri primi da sostituire,
> sostituisca con la concatenazione delle parole.
>
> il caso fizzbuzz è
>
> superfizzbuzz([(3,'fizz'),(5,'buzz')])
>
> testare ad esempio con :
>
> superfizzbuzz([(3,'alice'),(7,'bob'),(11,'charlie')])
>
>
> Parte la sfida ;)
>
>
> G
>
>
>
>
>
> >
> > :P
> >
> > ㎝
> >
> > --
> > |:**THE 🍺-WARE LICENSE** *(Revision ㊷)*:
> > | <miron@🐍.it> wrote this mail. As long as you retain this
> > | notice you can do whatever you want with this stuff.
> > | If we meet some day, and you think this stuff is worth it,
> > | you can buy me a 🍺 in return. —㎝
> > _______________________________________________
> > Python mailing list
> > Python a lists.python.it
> > https://lists.python.it/mailman/listinfo/python
>
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> https://lists.python.it/mailman/listinfo/python
>
>
>
> --
> There is a crack, a crack in everything. That’s how the light gets in
> L. Cohen
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> https://lists.python.it/mailman/listinfo/python
Maggiori informazioni sulla lista
Python