Nota: Este não é um desafio para o golfe; é mais ainda pedir sugestões de golfe.
Recentemente, tive uma atribuição Python para minha classe de desenvolvimento web, a fim de verificar se poderíamos codificar. Como já me sinto confortável em Python, decidi tentar jogar golfe e fiquei pensando se as pessoas poderiam apontar as coisas que eu sentia falta.
Eu já sei que existem espaços extras em alguns lugares, mas estou mais interessado em coisas conceituais, como usar while r:
quando r é uma variável e esperar que "acabe"!
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
Além disso: desculpe se esta não é uma pergunta apropriada para a página de código de golfe, pois não é um desafio e a removerá mediante solicitação.
print
, mas apenas para verificar) #