Ich beschäftige mich mit etwas Mysterium und hoffe auf etwas Klarheit. Ich schrieb ein Skript für die Suche nach Würfelkombinationen Rolle zu 24 hinzufügen, die wie folgt aussieht:Erstellung eines unerwarteten Tupelwertes
start=[3,3,3,3,3,3,3,3]
outcomes=set(tuple(start)) #Use a set to ensure uniqueness
index_list=np.random.randint(0,8,1000)
#This little snippet adds one and subtracts one randomly, keeping total at 24
for i in xrange(0,500):
upper=index_list[i]
downer=index_list[i+20]
if start[upper]!=6 and start[downer]!=1:
start[upper]=start[upper]+1
start[downer]=start[downer]-1
outcomes.add(tuple(start))
print outcomes
Was ich in laufen lasse, ist, dass wenn ich auf die Ergebnisse schauen, gibt es eine einzige 3 vom Typ ‚int‘ in Dort.
set([(4, 4, 4, 3, 2, 2, 2, 3), 3, (2, 5, 4, 3, 1, 4, 2, 3), (4, 4, 4, 2, 3, 1, 3, 3),(4, 2, 5, 2, 3, 4, 1, 3)])
Während ich es sicherlich entfernen konnte, bin ich nur neugierig, wie es ist, damit zu beginnen? Meine anfängliche Vermutung war, dass die Indexliste einen Index außerhalb von [0-7] erzeugen könnte, ist es aber nicht. Ich habe an anderen Stellen nach einer ähnlichen Frage gesucht, habe aber noch ein ähnliches Problem gefunden. Vielen Dank!
Ahh das macht Sinn! Wer hat das abgelehnt? Warum hast du das gemacht? Ist das nicht eine pythonische Art, dies zu tun, oder gibt es einen anderen Grund, es zu verwerfen? –
Ich wollte den Kommentar kommentieren. Jemand, der die Frage falsch verstanden hat ... Ich verstehe es auch nicht. –
@MasonGardner Ich habe nicht downvote, aber der Grund, warum ich nicht upvote, ist, dass die Erklärung meiner Meinung nach ein wenig irreführend/unlängst ist. 'set' erwartet ein iterables, aber [tuples * sind * iterables] (https://docs.python.org/2/glossary.html#term-iterable) - diese Antwort klingt so, als wären sie nicht. Der Grund, warum Sie "3" erhalten, ist, dass dies der einzige eindeutige Wert in "(3, 3, 3, 3, 3, 3, 3, 3)" ist. – elethan