難易度: 中級 次の Python プログラムの出力を予測します。 プログラム 1: Python3 class Geeks: def __init__(self id): self.id = id manager = Geeks(100) manager.__dict__['life'] = 49 print (manager.life + len(manager.__dict__))
Output:51
説明 : 上記のプログラムでは、クラス「Geeks」のオブジェクト「manager」の辞書に直接追加することにより、「life」という名前のメンバー変数を作成しています。辞書内の項目の総数は、変数「life」と「id」の 2 つです。したがって、辞書のサイズまたは長さは 2 で、変数 'life' には値 '49' が割り当てられます。したがって、変数「life」と辞書のサイズの合計は 49 + 2 = 51 となります。 プログラム 2: Python3 a = 'GeeksforGeeks ' b = 13 print (a + b)
Output:An error is shown.
説明 : ご覧のとおり、変数 'b' は整数型で、変数 'a' は文字列型です。また、Python は厳密に型指定された言語であるため、単純に整数と文字列を連結することはできません。まず整数変数を文字列型に変換して、文字列変数と連結する必要があります。したがって、整数変数を文字列変数に連結しようとすると、タイプ「TypeError」の例外が発生します。 プログラム 3: Python3 dictionary = {} dictionary[1] = 1 dictionary['1'] = 2 dictionary[1] += 1 sum = 0 for k in dictionary: sum += dictionary[k] print (sum) Output: 4
説明: 上記の辞書では、キー 1 は一重引用符で囲まれており、一方は整数でもう一方は文字列であるため、1 だけが 2 つの異なるキーを表します。したがって、プログラムの出力は 4 になります。 プログラム 4: Python3 dictionary = {1:'1' 2:'2' 3:'3'} del dictionary[1] dictionary[1] = '10' del dictionary[2] print (len(dictionary)) Output:2
説明 : 「del」関数のタスクは、辞書からキーと値のペアを削除することです。当初、指定されたディクショナリのサイズは 3 でした。その後、キー 1 のキーと値のペアが最初に削除され、新しい値で再度追加されます。次に、キー 2 のキー値ペアが削除されます。したがって、最終的に辞書のサイズは 2 になります。