トップ44のPythonインタビューの質問と回答:Ultimate Guide 2022
公開: 2021-06-22Pythonのインタビューに参加し、あなたが経験するすべての質問と議論は何であるか疑問に思いますか? Pythonの面接に参加する前に、Pythonの面接の質問の種類について考えておくと、回答を準備できるようになります。
最近最も人気のあるプログラミング言語の1つであるPythonは、確立されたプログラマーと初心者のプログラマーの両方にとってホットな選択です。 また、言語の使いやすさは、現実の世界に適用できるいくつかの興味深いPythonプロジェクトの開発に役立ちます。 そのシンプルさと使いやすさは、その人気に役立ちます。 言うまでもなく、これはRとともに、データサイエンスおよびデータ視覚化の分野で選択される言語です。
そうは言っても、Pythonは誰のツールキットにとっても非常に重要な言語です。 あなたを助けるために、私はPythonインタビューの質問の深さと本当の意図を理解するために、 Pythonインタビューの質問と回答のトップガイドを作成しました。
あなたを助けるために、私はPythonの面接の質問の深さと本当の意図を理解するために、 Pythonの面接の質問と回答のトップガイドを作成しました。 始めましょう。
これらの質問とは別に、結果の値またはステートメント(またはその欠如)を推測する必要があるコードスニペットも提供されます。 これらは予測できず、プログラミングの練習に依存します。 認められた機関からデータサイエンスを学ぶことは、Pythonの面接を簡単にクリアし、常に望んでいた夢の仕事を得るのに役立ちます。
Pythonのトップインタビューの質問と回答から始めましょう。
目次
Pythonインタビューの質問と回答2022
Q 1)Pythonのモジュールとパッケージの違いは何ですか?
A 1)各Pythonプログラムファイルは、オブジェクトなどの他のモジュールをインポートするモジュールです。 したがって、モジュールはプログラムを構造化する方法です。 Pythonプログラムのフォルダーは、モジュールのパッケージと呼ばれます。
Q 2)Pythonで利用できる組み込み型は何ですか?
A 2)最も一般的なPythonインタビューの質問の1つ、可変および不変の組み込み型があります。
変更可能なものは次のとおりです。
- リスト
- セット
- 辞書
不変タイプには次のものがあります。
- 文字列
- タプル
- 数字
Q 3)Pythonのラムダ関数とは何ですか?
A 3)インライン関数としてよく使用され、単一式の無名関数です。 これは、新しい関数オブジェクトを作成し、実行時にそれらを返すために使用されます。
LambdaはPythonの無名関数であり、任意の数の引数を受け入れることができ、任意の数のパラメーターを持つことができます。 ただし、ラムダ関数は1つの式またはステートメントしか持つことができません。 通常、これは短期間の匿名関数を必要とする状況で使用されます。 Lambda関数は、次の2つの方法のいずれかで使用できます。
ラムダ関数の例を次に示します。
a =ラムダx、y:x + y
print(a(5、6))
出力: 11
Q 4)名前空間とはどういう意味ですか?
名前空間とは、競合を回避するために、Pythonプログラム内のすべてのオブジェクト名が一意であることを確認するために使用される命名システムを指します。 Pythonでは、これらの名前空間は、対応するオブジェクトに値としてマップされた「キーとしての名前」を持つ辞書として実装されます。 その結果、複数の名前空間が同じ名前を使用して、それを別のオブジェクトにマップできます。
以下は、Pythonの3種類の名前空間です。
- ローカル名前空間–関数内にローカル名が含まれます。 ローカル名前空間は、関数呼び出し用に一時的に作成され、関数が戻るとクリアされます。
- グローバル名前空間–プロジェクトで現在使用されているさまざまなインポートされたパッケージ/モジュールの名前で構成されます。 グローバル名前空間は、パッケージがスクリプトにインポートされるときに作成され、スクリプトが実行されるまで続きます。
- 組み込みの名前空間–コアPythonの組み込み関数と、さまざまなタイプの例外の組み込み名が含まれています。
Q 5)リストとタプルの違いを説明してください。
A 5)Pythonインタビューの質問と回答のガイドは、この質問なしでは完了しません。 リストは変更可能ですが、タプルは変更できません。 辞書のキーを作成する場合と同様に、タプルをハッシュできます。
Q 6)酸洗いと酸洗いの違いは?
Pythonインタビューの質問と回答のガイドは、この質問なしでは完了しません。 Pythonでは、pickleモジュールは任意のPythonオブジェクトを受け入れ、それを文字列表現に変換し、dump関数を使用してファイルにダンプします。 このプロセスはピクルスとして知られています。 このプロセスに使用される関数はpickle.dump()です。
一方、保存された文字列表現から元のPythonオブジェクトを取得するプロセスは、アンピッキングと呼ばれます。 このプロセスに使用される関数はpickle.load()です。
Q 7)Pythonのデコレータとは何ですか?
A 7)Pythonデコレータは、関数を簡単に変更できるようにPython構文に加えられた特定の変更です。
Q 8)ジェネレーターとイテレーターの違いは?
A 8)Pythonでは、イテレータは要素のグループ(たとえば、リスト内)を反復処理するために使用されます。 これらのイテレータを実装する方法は、ジェネレータとして知られています。 関数内に式を生成しますが、それ以外は通常の関数のように動作します。
Q 9)数値を文字列に変換するにはどうすればよいですか?
A 9)最も一般的なPythonインタビューの質問の1つ。 組み込みのstr()関数を使用できます。 8進数または16進数の表現の場合、oct()やhex()などの他の組み込み関数を使用できます。
Q 10)Pythonでの//演算子の使用法は何ですか?
A 10)2つの数値の間に//演算子を使用すると、分子を分母から割ったときの商が得られます。 フロアディビジョンオペレーターと呼ばれます。 これは、Pythonインタビューの質問と回答ガイドからの一般的な質問の1つです。
Q 11)PythonにはCのようなSwitchまたはCaseステートメントがありますか?
A 11)いいえ、ありません。 ただし、独自のスイッチ機能を作成して使用することはできます。
Q 12)range()関数とは何ですか?そのパラメーターは何ですか?
A 12)range()関数は、数値のリストを生成するために使用されます。 整数のみが許可されているため、パラメーターは負と正の両方にすることができます。 次のパラメータを使用できます。
範囲(停止)
ここで、「停止」はいいえです。 0から開始して生成する整数の数。例:range(5)== [0,1,2,3,4]
range([start]、stop [、step])
開始:開始番号を指定します。 シーケンスの
停止:シーケンスの上限を指定します
ステップ:シーケンスの増分係数です
Q 13)%sの用途は何ですか?
13)%sは、任意の値を文字列に変換するフォーマット指定子です。
Q 14)Python関数は値を返す必要がありますか?
A 14)いいえ
Q 15)Pythonにはmain()関数がありますか?
A 15)はい、あります。 Pythonスクリプトを実行するたびに自動的に実行されます。 この自然な流れを無効にするために、ifステートメントを使用することもできます。
Q 16)GILとは何ですか?
16)GILまたはグローバルインタープリターロックはミューテックスであり、Pythonオブジェクトへのアクセスを制限するために使用されます。 スレッドを同期し、同時に実行されないようにします。
Q 17)'in'演算子を使用する前に、辞書内のキーの存在を確認するために使用された方法はどれですか?
A 17)has_key()メソッド
Q 18)リストのデータ型をどのように変更しますか?
A 18)リストをタプルに変更するには、tuple()関数を使用します
セットに変更するには、set()関数を使用します
辞書に変更するには、dict()関数を使用します
文字列に変更するには、.join()メソッドを使用します
Q 19)Pythonの主な機能は何ですか?
A 19)これは一般的なPythonインタビューの質問の1つです。 Pythonは、オープンソースの高レベルの汎用プログラミング言語です。 汎用プログラミング言語であり、さまざまなライブラリが付属しているため、Pythonを使用してほぼすべてのタイプのアプリケーションを開発できます。
その主な機能のいくつかは次のとおりです。
- 通訳
- 動的型付け
- オブジェクト指向
- 英語のような構文
Q 20)Pythonでのメモリ管理について説明してください。
A 20)Pythonでは、Pythonメモリマネージャーがメモリ管理を行います。 すべてのPythonオブジェクトとデータ構造を格納するプライベートヒープスペースの形式でメモリを割り当てます。Pythonには4つの組み込みデータ構造があります。 このプライベートスペースには、プログラマーはアクセスできません。 ただし、コアAPIを使用すると、プログラマーはコーディング目的でいくつかのツールにアクセスできます。 さらに、Pythonには、プライベートヒープスペース用に未使用のメモリをリサイクルするガベージコレクターが組み込まれています。
Q 21)PYTHONPATHとは何ですか?
21)PYTHONPATHは、モジュール/パッケージがインポートされるときに追加のディレクトリを組み込むために使用される環境変数です。 モジュール/パッケージがインポートされるたびに、PYTHONPATHを使用して、インポートされたモジュールが既存のディレクトリに存在するかどうかを確認します。 通常、インタプリタはPYTHONPATHを使用して、ロードするモジュールを決定します。
Q 22)Pythonでは大文字と小文字が区別されますか?
A 22)プログラミング言語は、「myname」や「Myname」などの識別子を区別する場合、大文字と小文字を区別すると見なされます。 簡単に言えば、小文字または大文字の大文字小文字を考慮します。
例を見てみましょう:
- >>> myname='ジョン'
- >>>マイネーム
トレースバック(最後の最後の呼び出し):
<module>のファイル「<pyshell#3>」、1行目
自分の名前
NameError : name'Myname 'が定義されていません
NameErrorが発生するため、Pythonでは大文字と小文字が区別される言語であることを意味します。
続きを読む: Pythonパンダチュートリアル
Q 23)「help()」と「dir()」関数の使い方を説明してください。
A 23)Pythonインタビューの質問と回答ガイドで最も一般的な質問の1つ。 Pythonでは、help()関数は、モジュール、クラス、関数、キーワードなどのドキュメントを表示するために使用されます。 help()関数がパラメータを受け取らない場合、コンソールでインタラクティブヘルプユーティリティを起動します。
dir()関数は、呼び出されたオブジェクトの属性とメソッドの有効なリストを返すために使用されます。 この関数は(完全な情報を表示するのではなく)最も関連性の高いデータを生成することを目的としているため、オブジェクトごとに動作が異なります。
- モジュール/ライブラリオブジェクトの場合、dir()関数は、そのモジュールに含まれるすべての属性のリストを返します。
- クラスオブジェクトの場合、dir()関数はすべての有効な属性と基本属性のリストを返します。
- パラメータが渡されない場合、dir()関数は現在のスコープ内の属性のリストを返します。
Q 24)Pythonモジュールとは何ですか? Pythonで一般的に使用される組み込みモジュールに名前を付けますか?
24)Pythonモジュールは、関数クラスまたは変数のいずれかになり得るPythonコードを含むファイルです。 これらのモジュールは、拡張子が.pyのPythonファイルです。 モジュールには、定義および実装された関数、クラス、または変数のセットを含めることができます。 importステートメントを使用してモジュールをインポートおよび初期化できます。Pythonチュートリアルを学習すると、Pythonモジュールについて詳しく知ることができます。
Pythonで一般的に使用される組み込みモジュールのいくつかを次に示します。
- os
- sys
- 算数
- ランダム
- データ時間
- JSON
Q 25)Pythonで「自己」について説明してください。
A 25)Pythonでは、「self」はクラスのインスタンスまたはオブジェクトを定義するために使用されるキーワードです。 自己が最適であるJavaとは異なり、Pythonでは、主に最初のパラメーターとして使用されます。 Selfは、クラスのメソッドと属性をそのローカル変数から区別するのに役立ちます。
__init__メソッドの自己変数は、新しく作成されたオブジェクトまたはインスタンスを参照しますが、他のメソッドでは、メソッドが呼び出されたオブジェクトまたはインスタンスに関係します。
Q 26)PEP 8とは何ですか?
A 26)PEPまたはPython拡張提案は、読みやすさを最大化するためにPythonコードをフォーマットする方法を指定する一連のルールです。 これは、新しいPython機能やPythonプロセスの説明など、Pythonコミュニティに関連情報を提供する公式の設計ドキュメントです。 PEP 8は、Pythonコードのスタイルガイドラインを含む重要なドキュメントです。 Pythonオープンソースコミュニティに貢献したい人は、これらのスタイルガイドラインに厳密に従う必要があります。
Q 27)Pythonではインデントは必須ですか?
A 27)はい、Pythonにはインデントが必要です。 インデントは、コードのブロックを指定するのに役立ちます。 したがって、Pythonコードでは、ループ、クラス、関数などのすべてがインデントされたブロック内で指定されます。 Pythonコードが正しくインデントされていない場合、実行中に問題が発生し、エラーが発生します。
Q 28)Python配列とリストの違いを説明してください。
A 29)最も一般的なPythonインタビューの質問の1つ。 Pythonでは、配列とリストの両方を使用してデータを格納します。 しかし、
- 配列には同じデータ型の要素のみを含めることができます。つまり、配列のデータ型は同種である必要があります。
- リストには、さまざまなデータ型の要素を含めることができます。つまり、リストのデータ型は異種である可能性があります。 リストは配列よりもはるかに多くのメモリを消費します。
次に例を示します。
配列をarrとしてインポートします
My_Array = arr.array('i'、[1,2,3,4])
My_list = [1、'abc'、1.20]
print(My_Array)
print(My_list)
Q 29)__init__とは何ですか?
A 29)Pythonでは、__init__はメソッドまたはコンストラクターです。 クラスの新しいオブジェクトまたはインスタンスが作成されると、メモリを割り当てるために自動的に呼び出されます。 すべてのクラスには__init__メソッドがあります。
Pythonで__init__メソッドを使用する方法は次のとおりです。
#クラス定義
クラスの学生:
def __init __(self、fname、lname、age、section):
self.firstname = fname
self.lastname = lname
self.age=年齢
self.section=セクション
#新しいオブジェクトを作成する
stu1 = Student( "Sara"、 "Ansh"、22、 "A2")
Q 30)「ブレーク」、「コンティニュー」、「パス」の機能を教えてください。
A 30)これはPythonインタビューの質問と回答ガイドでよくある質問の1つです。 休憩を見て、続けて、詳細に渡してみましょう。
breakステートメントは、特定の条件が満たされたときにループを終了するために使用され、制御は次のステートメントに移されます。
- continueステートメントは、特定の条件が満たされたときにステートメントの現在の反復を終了するのに役立ち、現在の反復の残りのコードをスキップして、ループの次の反復に制御を渡します。
- passステートメントは、基本的にnull操作であり、実行時に実行される可能性があるがまだ書き込まれていないコードの空のブロックを埋めるために使用されます。 セミコロンで表されます。
Q 31)Pythonでコメントを書く方法は?
A 31)Pythonでは、コメントは#文字で始まります。 ただし、場合によっては、docstrings(三重引用符で囲まれた文字列)を使用してコメントを書き込むこともできます。 C ++とは異なり、Pythonは複数行コメントをサポートしていません。
Pythonでコメントを書く方法は次のとおりです。
>>>#コメントの1行目
>>>#コメントの2行目
Q 32)Pythonのジェネレーターは何ですか?
A 32)ジェネレーターは、アイテムの反復可能なコレクションを一度に1つずつ、整理された方法で返す最も重要なPython関数です。 一般に、ジェネレーターは、異なるアプローチでイテレーターを作成するために使用されます。ジェネレーターは、ジェネレーターオブジェクトを返すために戻るのではなく、yieldキーワードを使用します。
Q 33)Pythonで文字列の最初の文字を大文字にするにはどうすればよいですか?
A 33)Pythonでは、capitalize()メソッドを使用して、文字列の最初の文字を大文字にすることができます。 ただし、文字列の先頭がすでに大文字で構成されている場合は、元の文字列が返されます。
Q 34)Pythonの「docstrings」とは何ですか?
A 34)Docstringまたはドキュメント文字列は、特定のコードセグメントをドキュメント化するために使用される複数行の文字列です。 Docstringは通常、三重引用符で囲まれ、関数またはメソッドの機能を説明するのが理想的です。 コメントではありませんが、docstringは変数に割り当てられていないため、コメントの目的を果たす場合があります。
Q 35)「is」、「not」、「in」演算子の機能を説明してください。
A 35)繰り返しになりますが、人気のあるPythonインタビューの質問の1つです。 演算子はPythonの特殊関数であり、対応する結果を生成するために1つ以上の値を取ることができます。
- 「is」演算子は、2つのオペランドがtrueの場合にtrueを返します。
- 「not」演算子は、ブール値の逆数を返します。
- 「in」演算子は、いくつかの要素がいくつかのシーケンスに存在するかどうかをチェックします。
Q 36)Pythonでオブジェクトをコピーするにはどうすればよいですか?
A 36)Pythonでは、代入ステートメント(=演算子)はオブジェクトをコピーしませんが、代わりに、既存のオブジェクトとターゲット変数名の間にバインディングを作成します。 したがって、Pythonでオブジェクトのコピーを作成する場合は、コピーモジュールを使用する必要があります。 コピーモジュールを使用して特定のオブジェクトのコピーを作成するには、次の2つの方法があります。
- 浅いコピー–オブジェクトのビット単位のコピーです。 コピーされたオブジェクトには、元のオブジェクトに含まれている値の正確なレプリカが含まれます。 値のいずれかが他のオブジェクトへの参照である場合、同じものの参照アドレスのみがコピーされます。
- ディープコピー—すべての値をソースからターゲットオブジェクトに再帰的にコピーします。つまり、ソースオブジェクトによって参照されているオブジェクトも複製します。
Q 37)式とは何ですか?
A37)式は、変数、値演算子、関数の呼び出しの組み合わせとして定義できます。 これはオペランドのシーケンスであり、+ B –5のような演算子は式と呼ばれます。 Pythonは、データオブジェクトをエクスプレスに結合するための多くのそのような演算子をサポートしています。
Q 38)Pythonのステートメントとは何ですか?
A38)コマンドラインにステートメントを入力すると、Pythonが解釈して実行できる命令です。Pythonexecuteは、結果があればそれを表示します。
Q 39)Pythonの==とは何ですか?
A39)2つのオブジェクトの値をチェックまたは比較するために使用される演算子です
Q 40)Pythonのエスケープシーケンスとは何ですか?
A40)Python文字列、円記号「\」は、「エスケープ」文字とも呼ばれる特殊文字である可能性があります。 これは 特定の空白文字の表現に使用されます。「\t」はタブ、「\ n」は改行、「\r」は 印刷操作。 逆に、特殊文字の前に「\」を付けると、標準文字になります。
Q 41)カプセル化とは何ですか?
A41)カプセル化とは、データとデータを操作する関数をバインドすることです。
これは、データと変数を一緒にまとめるプロセスです。
例
クラスplayercharacter():
def __init __(self、name、age):
self.name = name
self.age=年齢
player1 = playercharacter('leo'、25)
print(player1.name)
print(player1.age)
Q42)Pythonでデータをどのように抽象化しますか?
A42)抽象化とは、情報を隠したり、必要な情報だけを表示したりすることを意味します。
例
print(len((1,2,3,1)))
#この例では、Pythonでlenがどのように導入されたかを知りたくありません
Q43)pthonの辞書とは何ですか?
A43)辞書はデータ構造であり、Pythonのデータ型でもあります。中括弧{}で囲まれています。
辞書には、キーと値の2つの要素が含まれています
keyは、値を取得するための文字列です。
例
辞書={
'a':1、
'b':2
}
print(dictionary ['b'])
Q44)機能とは何ですか?
A44)関数は、同じメソッドを2回以上実行する場合に使用されるコードのセットです。これにより、プログラムの長さが短縮されます。関数は2つのカテゴリに定義されます–
1)関数の定義
2)関数呼び出し
例
def dog():
print(「私の名前はトミーです」)
犬();
結論
Pythonインタビューの質問と回答のガイドがお役に立てば幸いです。 ガイドは定期的に更新され、最新の状態に保たれます。
上記の質問のリストは、PCでの独自の練習と組み合わせることで、これまでのすべてのPythonインタビューをクラックするのに役立ちます。 基本とは別に、残された唯一のことは、インタビュアーがあなたに質問をしている間、あなたの心がすでにそれを使ってコードを書き、実行しているように練習することです。
データサイエンスについて詳しく知りたい場合は、IIIT-B&upGradのデータサイエンスのエグゼクティブPGプログラムをご覧ください。これは、働く専門家向けに作成され、10以上のケーススタディとプロジェクト、実践的なハンズオンワークショップ、業界の専門家とのメンターシップを提供します。業界のメンターとの1対1、400時間以上の学習、トップ企業との仕事の支援。
Pythonインタビューラウンドに進む前に、覚えておく必要のある特定のポイントがあります。 次のヒントは、最初の面接の準備をしている新入生が面接をクラックするためのものです。 以下は、Pythonインタビューの難易度に直接影響を与える可能性のあるいくつかのポイントです。Pythonインタビューの準備はどのようにすればよいですか?
1.基本的なPythonの概念と高度なPythonの概念、特にPythonのデータ構造とアルゴリズムを理論的に明確にする必要があります。
2.コードの記述を求められる可能性があるため、正しいPython構文を知っている必要があります。
3.最もよく聞かれるPython面接の質問を練習し、よく聞かれる可能性のある有名なコーディングの問題に精通します。
4.面接官のほとんどは、あなたが取り組んだリアルタイムのプロジェクトを求めているので、面接に行く前にプロジェクトを読んでください。
5.最後になりましたが、インタビュアーが最初に気付くのは自分がどれだけ自信があるかということなので、自分に自信を持っている必要があります。 Pythonの最初の面接の準備をしている新入生のためのヒントは何ですか?
良い履歴書を作成し、専門家にレビューしてもらうか、ウェブサイトにアクセスして履歴書について専門家の意見を聞くこともできます。
ポートフォリオで紹介する優れたライブプロジェクトを少なくとも2つ用意してください。 あなたはあなたのプロジェクトの良いコマンドを持っている必要があります
実際の面接に出る前に、オンラインで模擬面接を試みて、自信を高め、間違いを正してください。
大声で説明しながら、コーディングの質問を練習します。 これにより、言語スキルが向上します。 Pythonインタビューの難易度はどれくらいですか?
役職:面接の難易度は、応募した役職によって大きく異なります。 たとえば、SDE3の投稿の面接は、SDE1の面接よりも難しくなります。
会社:ニーズと要件は会社ごとに異なる場合があります。 一部の企業は、エンジニアにもっと複雑な作業を期待するため、それぞれ厳しい面接を受けることになります。
経験レベル:求人応募で0〜2年の経験レベルが求められている場合、同じ職務での面接の難易度は、それぞれ0年と2年の経験を持つ2人の候補者で異なる可能性があります。