ホームページ > バックエンド開発 > Python チュートリアル > Python の問題 HackerRank - 基本データ型リスト

Python の問題 HackerRank - 基本データ型リスト

WBOY
リリース: 2024-09-04 14:31:10
オリジナル
1086 人が閲覧しました

Problema HackerRank em Python - Base Data Types Lists

この Python コードは、ユーザー指定のコマンドに基づいてリストに対して一連の操作を実行するように設計されています。コードがどのように機能するかを理解するために、コードを段階的に分析してみましょう:

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__':

  • この行は、スクリプトが直接実行されているかどうかを確認します。ファイルがプログラムのエントリ ポイントである場合にのみ、このブロック内のコードが実行されるようにするために採用された手法です。

N = int(input())

  • プログラムは、ユーザーが変数 N に格納される整数を入力することを期待します。この数値は、ユーザーが実行する操作の数を表します。

l = []

  • 操作の実行時に要素を保存するために使用される空のリスト。

while(N>0):

  • N が 0 より大きい限り実行を続ける while ループが開始されます。これは、ユーザーが実行したい操作ごとに 1 回ずつ、ループが N 回実行されることを意味します。

cmd_l = input().split()

  • ループ内で、プログラムはユーザーがテキスト行を入力するのを待ちます。テキスト行は、split() メソッドを使用して文字列のリスト (cmd_l) に分割されます。 cmd_l リストの各要素は、実行される操作の一部を表します。

if(len(cmd_l) == 3 および cmd_l[0] == "挿入"):

  • この行は、操作が 3 つの部分からなる「挿入」コマンドであるかどうかをチェックします (cmd_l の長さは 3 で、最初の要素は「挿入」である必要があります)。

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

  • 上記の条件が真の場合、リスト l の挿入メソッドが呼び出されます。引数は文字列から整数に変換されます。cmd_l[1] は要素が挿入される位置、cmd_l[2] は挿入される要素です。

elif(len(cmd_l) == 2 and (cmd_l[0] == "削除" または cmd_l[0] == "追加")):

  • この行は、操作が 2 つの部分からなる "remove" または "append" コマンドであるかどうかを確認します。cmd_l の長さは 2 であり、最初の要素は "remove" または "append" である必要があります。

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

  • コマンド (削除または追加) に応じて、リスト l の対応するメソッドが呼び出されます。削除の場合、cmd_l 要素 (整数に変換) がリストから削除されます。追加の場合、要素 cmd_l[[1](整数に変換) がリストの最後に追加されます。

elif(len(cmd_l) == 1):

  • 操作が単一部分のコマンドであるかどうかを確認します (cmd_l の長さは 1 である必要があります)。

if(cmd_l[0] == "並べ替え"):
l.sort()
elif(cmd_l[0] == "反転"):
l.reverse()
elif(cmd_l[0] == "ポップ"):
l.pop()
elif(cmd_l[0] == "印刷"):
プリント(l)

  • コマンド (sort、reverse、pop、または print) に応じて、リスト l の対応するメソッドが呼び出されます。 sort はリストを並べ替え、reverse は要素の順序を逆にし、pop は最後の要素を削除し、print はリストを印刷します。

N -= 1

  • ループの最後で、N が 1 減算され、操作が実行されたことを示します。これは、N が 0 になり、ループが終了するまで続きます。

以上がPython の問題 HackerRank - 基本データ型リストの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート