„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Problema HackerRank in Python – Basisdatentyplisten

Problema HackerRank in Python – Basisdatentyplisten

Veröffentlicht am 06.11.2024
Durchsuche:481

Problema HackerRank em Python - Base Data Types Lists

Dieser Python-Code dient dazu, eine Reihe von Operationen für eine Liste basierend auf vom Benutzer bereitgestellten Befehlen auszuführen. Lassen Sie uns den Code Schritt für Schritt analysieren, um zu verstehen, wie er funktioniert:

if __name__ == '__main__':
    N = int(input())
    l = []
    while(N>0):
        cmd_l = input().split()
        if(len(cmd_l) == 3 and cmd_l[0] == "insert"):
            #insert statement
            l.insert(int(cmd_l[1]),int(cmd_l[2]))
        elif(len(cmd_l) == 2 and (cmd_l[0] == "remove" or cmd_l[0] == "append")):
            if(cmd_l[0] == "remove"):
                l.remove(int(cmd_l[1]))
            elif(cmd_l[0] == "append"):
                l.append(int(cmd_l[1]))
        elif(len(cmd_l) == 1):
            if(cmd_l[0] == "sort"):
                l.sort()
            elif(cmd_l[0] == "reverse"):
                l.reverse()
            elif(cmd_l[0] == "pop"):
                l.pop()                
            elif(cmd_l[0] == "print"):
                print(l)
        N -= 1

if __name__ == '__main__':

  • Diese Zeile prüft, ob das Skript direkt ausgeführt wird. Vorgehensweise, um sicherzustellen, dass der Code in diesem Block nur ausgeführt wird, wenn die Datei der Einstiegspunkt des Programms ist.

N = int(input())

  • Das Programm erwartet, dass der Benutzer eine Ganzzahl eingibt, die in der Variablen N gespeichert wird. Diese Zahl gibt an, wie viele Operationen der Benutzer ausführen wird.

l = []

  • Leere Liste, die zum Speichern von Elementen verwendet wird, während Vorgänge ausgeführt werden.

while(N>0):

  • Eine While-Schleife wird gestartet, die weiterläuft, solange N größer als 0 ist. Das bedeutet, dass die Schleife N-mal ausgeführt wird, einmal für jede Operation, die der Benutzer ausführen möchte.

cmd_l = input().split()

  • Innerhalb der Schleife wartet das Programm darauf, dass der Benutzer eine Textzeile eingibt, die mithilfe der Methode split() in eine Liste von Zeichenfolgen (cmd_l) unterteilt wird. Jedes Element der cmd_l-Liste stellt einen Teil der auszuführenden Operation dar.

if(len(cmd_l) == 3 and cmd_l[0] == "insert"):

  • Diese Zeile prüft, ob es sich bei der Operation um einen dreiteiligen „Einfüge“-Befehl handelt (cmd_l muss die Länge 3 haben und das erste Element muss „Einfügung“ sein).

l.insert(int(cmd_l[1]),int(cmd_l[2]))

  • Wenn die obige Bedingung wahr ist, wird die Einfügemethode der Liste l aufgerufen. Die Argumente werden von einer Zeichenfolge in eine Ganzzahl konvertiert: cmd_l[1] ist die Position, an der das Element eingefügt wird, und cmd_l[2] ist das einzufügende Element.

elif(len(cmd_l) == 2 and (cmd_l[0] == "remove" or cmd_l[0] == "append")):

  • Diese Zeile prüft, ob es sich bei der Operation um einen zweiteiligen „Remove“- oder „Append“-Befehl handelt. cmd_l muss die Länge 2 haben und das erste Element muss „remove“ oder „append“ sein.

if(cmd_l[0] == "remove"):
l.remove(int(cmd_l[1]))
elif(cmd_l[0] == "append"):
l.append(int(cmd_l[1]))

  • Je nach Befehl (remove oder append) wird die entsprechende Methode aus Liste l aufgerufen. Beim Entfernen wird das cmd_l-Element (in eine Ganzzahl konvertiert) aus der Liste entfernt. Beim Anhängen wird das Element cmd_l[[1](in Ganzzahl konvertiert) am Ende der Liste hinzugefügt.

elif(len(cmd_l) == 1):

  • Überprüft, ob die Operation ein einteiliger Befehl ist (cmd_l muss die Länge 1 haben).

if(cmd_l[0] == "sort"):
l.sort()
elif(cmd_l[0] == "reverse"):
l.reverse()
elif(cmd_l[0] == "pop"):
l.pop()
elif(cmd_l[0] == "print"):
print(l)

  • Je nach Befehl (sort, reverse, pop oder print) wird die entsprechende Methode aus Liste l aufgerufen. sort sortiert die Liste, reverse kehrt die Reihenfolge der Elemente um, pop entfernt das letzte Element und print druckt die Liste.

N -= 1

  • Am Ende der Schleife wird N um 1 dekrementiert, was anzeigt, dass eine Operation ausgeführt wurde. Dies wird fortgesetzt, bis N 0 ist und die Schleife endet.
Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/gusmedeirost/problema-hackerrank-em-python-base-data-types-lists-5h91?1 Bei Verstößen wenden Sie sich zum Löschen bitte an [email protected] Es
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3