-4
votes

Fonction de combinaison Python

Aujourd'hui, je vais publier une énigme.

La meilleure réponse sera le code le plus court.

Écrivez une fonction à une ligne qui accepte une devise et une liste de nombres. La fonction doit renvoyer une chaîne où chaque numéro de la liste est attaché avec sa devise.

Voici un exemple d'un moyen simple de le résoudre.

def combine_coin(coin, numbers):
    coins_str = ''
    for num in numbers:
        coins_str += coin + str(num) + ', '
    return coins_str[:-2]

print(combine_coin('$', range(5)))


1 commentaires

il y a un site pour ça: codegolf.stackexchange.com


3 Réponses :


1
votes
def combine_coin(coin, numbers):
    return ', '.join([f'{coin}{k}' for k in numbers])

0 commentaires

0
votes
print(','.join(list(map(lambda num:"$"+num,input("enter the values <sep by space>").split()))))
Okay splitting this long line, we get 1)
','.join(list( - this  will join the list we get with a comma2)map- maps a function to all values in a list and returns a map object containing the return value of the function3)lambda num:'$'+str(num) - takes a number and returns its string with a '$' example: '$1'4)input().split()- splits the input by space

2 commentaires

Bien que ce code puisse résoudre le problème, une bonne réponse devrait également expliquer ce que fait le code et comment il aide.


Je suis nouveau sur stackoverflow .... Merci pour la pointe.



0
votes

Codegolf est amusant:

def combine_coin(c, n):
    return ', '.join(c+str(k) for k in n)


1 commentaires

pourquoi avez-vous alors accepté une solution beaucoup plus longue? :-)