Remarque: Ce n'est pas autant un défi de golf; il s'agit plus de demander des suggestions de golf.
Récemment, j'ai eu une affectation Python pour ma classe de développement Web, afin de vérifier si nous pouvions coder. Comme je me sens déjà à l'aise en Python, j'ai décidé d'essayer de jouer au golf et je me demandais si les gens pouvaient signaler des choses qui m'ont manqué.
Je sais déjà qu'il y a des espaces supplémentaires à certains endroits, mais je suis plus intéressé par les choses conceptuelles, comme utiliser while r:
quand r est une variable, puis attendre qu'elle "s'épuise"!
import random
from collections import Counter
s=l=''
c=['yellow','blue','white','green','Black', 'purple', 'silver', 'cyan', 'magenta', 'red']
n=[10,15,1,10,6,15,10,25,1,12,5,10,4,6,5,12,0,10,1,1]
o=i=0
for y in c:l+=y[0]*(random.randint(n[o],n[o+1]));o+=2
l=list(l)
print("Welcome to the CIMS Gumball Machine Simulator\nYou are starting with the following gumballs:")
for b in c:print(str(l.count(b[0])) + " "+b);random.shuffle(l)
print("Here are your random purchases:")
while 'r' in l:
random.shuffle(l); r=l.pop(); s+=r
for j in c:
if j[0] == r:print(j.capitalize())
print("You purchased %i gumballs, for a total of $%.2f \nMost common gumball(s):" % (len(s),len(s)*25/100))
a=Counter(s).most_common()
m=[x[1] for x in a]
while m[0] == m[i]:
for j in c:
if j[0] == a[i][0]:print(j.capitalize(), end=" ")
if(i<(len(m)-1)):i+=1
else:break
Aussi: Je suis désolé si ce n'est pas une question appropriée pour la page de golf de code, car ce n'est pas un défi et le supprimera sur demande.
print
, mais juste pour vérifier)