・ Es ist ein Memorandum über das aufgeholte Wissen. ・ Ich würde mich freuen, wenn Sie auf Fehler hinweisen könnten.
・ To_a
Methode
Eine Methode zum Konvertieren von Hashes, Bereichsobjekten usw. in Arrays. Quelle: [Ruby] Lassen Sie uns verstehen, wie die to_a-Methode verwendet wird
・ Shuffle
Methode
Die Shuffle-Methode ruft die Elemente des Arrays durch zufälliges Austauschen ab. Quelle: Erster Rubin! Sequenzen nach dem Zufallsprinzip erwerben / ersetzen | sample / shuffle
・ Join
Methode
Die Join-Methode wird verwendet, wenn Sie die Elemente eines Arrays zu einer einzigen Zeichenfolge kombinieren möchten. Die Join-Methode konvertiert jedes Element des Arrays in eine Zeichenfolge und verknüpft die Argumente als Trennzeichen. Quelle: Aktive Ingenieure erklären, wie die Join-Methode von Ruby [für Anfänger] verwendet wird
('a'..'z').to_a.shuffle[0..7].join
Versuchen Sie, den Befehl im Terminal auszuführen. Geben Sie "irb" ein und geben Sie den Befehl ein.
Terminal
munetomokazushi@mba ~ % irb
irb(main):001:0> ('a'..'z').to_a.shuffle[0..7].join
=> "yahxwgti"
Es wurde ein 8-stelliges Zufallsalphabet ausgegeben.
Zerlegen.
irb(main):001:0> ('a'..'z')
Beschreiben Sie zunächst, dass der Bereich von der alphabetischen Zeichenfolge "a" bis "z" reicht.
..
ist ein Range-Objekt. ..
enthält das letzte Zeichen, aber ...
enthält nicht das letzte Zeichen. Hinweis.
irb(main):001:0> ('a'..'z').to_a
=> ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]
Es wurde ein Array mit der Methode .to_a.
irb(main):001:0> ('a'..'z').to_a.shuffle
=> ["o", "c", "q", "i", "m", "a", "k", "l", "t", "x", "z", "w", "n", "v", "b", "s", "h", "u", "r", "e", "g", "y", "f", "j", "p", "d"]
Das Array wurde mit der Shuffle-Methode gemischt. (Wird jedes Mal gemischt, wenn du rennst)
irb(main):001:0> ('a'..'z').to_a.shuffle[0..7]
=> ["r", "f", "b", "x", "y", "m", "g", "t"]
Ich bekomme von Anfang an das gemischte Array für 8 Zeichen. Beachten Sie, dass das Array bei 0 beginnt.
irb(main):001:0> ('a'..'z').to_a.shuffle[0..7].join
=> "yahxwgti"
Schließlich wurde die Join-Methode verwendet, um die Elemente des Arrays zu einer einzigen Zeichenfolge zu kombinieren.
Ich habe einen Kommentar erhalten, bitte zitieren Sie ihn und fügen Sie ihn hinzu. Vielen Dank, @ nodai2h_ITC!
Diese Methode generiert keine Zeichenfolge, die mehr als einmal dasselbe Zeichen hat, z. B. "agrjesao". Wenn Sie beispielsweise ein Programm für das dritte Spiel von Janken schreiben und ein Programm schreiben, das keinen einzigen Zug ausführt, würden Sie es nicht als "zufälligen Zug" bezeichnen. Außerdem können Sie mit dieser Methode keine zufällige alphabetische Zeichenfolge mit 30 Zeichen erstellen, die beispielsweise die Anzahl der alphabetischen Zeichen überschreitet. Wie wäre es also mit einer Methode zum Generieren einer "zufälligen Alphabet-Zeichenfolge", die dieselben Zeichen zulässt?
chars = ('a'..'z').to_a # = *'a'..'z'Aber ja
8.times.map{ chars.sample }.join
Dieses Ergebnis sieht so aus.
irb(main):009:0> chars = ('a'..'z').to_a
=> ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k", "l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v", "w", "x", "y", "z"]
irb(main):010:0> 8.times.map{ chars.sample }.join
=> "bjtaniyw"
irb(main):011:0> 8.times.map{ chars.sample }.join
=> "ntbtrdml"
irb(main):012:0> 8.times.map{ chars.sample }.join
=> "ajsgpcwn"
irb(main):013:0> 8.times.map{ chars.sample }.join
=> "vxdgakuc"
irb(main):014:0> 8.times.map{ chars.sample }.join
=> "xknqtmcq" #Das gleiche Alphabet erscheint zweimal. Es wird richtig zufällig angezeigt
# string_Shuffle-Methode definieren
def string_shuffle(s)
s.split('').shuffle.join
end
#Versuchen anzurufen
string_shuffle("foobar")
# string_Ergebnis des Aufrufs der Shuffle-Methode
=> "fboora"
irb(main):005:0> ('Ah'..'Hmm').to_a.shuffle[0..7].join
=> "Gofukuporekariso"
Sie können auch Hiragana verwenden.
-Es kann auch beim Erstellen von zufälligen Subdomains verwendet werden. -Wenn Sie auf der Konsole laufen, geben Sie im Terminal "Rails c" ein, um die Konsole zu starten.
[Ruby] Lassen Sie uns verstehen, wie die to_a-Methode verwendet wird Zum ersten Mal Ruby! Sequenzen nach dem Zufallsprinzip erwerben / ersetzen | sample / shuffle Aktive Ingenieure erklären, wie die Join-Methode von Ruby [für Anfänger] verwendet wird
Recommended Posts