Heim  >  Artikel  >  Backend-Entwicklung  >  Was sind die häufigsten Fragen in Python-Interviews?

Was sind die häufigsten Fragen in Python-Interviews?

coldplay.xixi
coldplay.xixiOriginal
2020-10-27 09:58:144159Durchsuche

Zu den häufig gestellten Fragen in Python-Interviews gehören: 1. Wie wird Python interpretiert? 3. Wie verwaltet Python den Speicher? 5. Welche integrierten Typen bietet Python? . Viele kostenlose Lernempfehlungen finden Sie im Python-Tutorial

1. Was ist Python? ? Vor- und Nachteile kurz beschreiben und erläutern?

Was sind die häufigsten Fragen in Python-Interviews?Python ist eine objektorientiert interpretierte Computerprogrammiersprache. Es handelt sich um eine Skriptsprache, die Interpretation, Kompilierung, Interaktivität und Objektorientierung kombiniert.

Vorteile: Open Source, kostenlos, einfach, leicht zu erlernen, portabel, skalierbar, leicht zu warten und hohe Entwicklungseffizienz.

Nachteile: langsame Laufgeschwindigkeit, Code kann nicht verschlüsselt werden. 2. Wie wird Python interpretiert? Python ist eine interpretierte Sprache und ihr Quellcode kann direkt ausgeführt werden. Der Python-Interpreter konvertiert den Quellcode in eine Zwischensprache und übersetzt ihn dann zur Ausführung in Maschinencode.

3. Was ist PEP8?

PEP8 ist eine Programmierspezifikation, die Vorschläge für eine bessere Lesbarkeit von Programmen liefert.

4. Wie verwaltet Python den Speicher?

1) Referenzzählmechanismus: Python verwendet intern die Referenzzählung, um den Überblick über Objekte im Speicher zu behalten. 2) Garbage-Recovery-Mechanismus: Wenn der Referenzzähler eines Objekts Null ist, wird es vom Garbage-Collection-Mechanismus verarbeitet.

3). Speicherpool-Mechanismus:

Python bietet einen Garbage-Collection-Mechanismus für den Speicher, legt jedoch ungenutzten Speicher in den Speicherpool, anstatt ihn an das Betriebssystem zurückzugeben:

Pymalloc-Mechanismus: Um die Ausführung zu beschleunigen Aufgrund der Effizienz von Python führt Python einen Speicherpoolmechanismus ein, um die Anwendung zu verwalten und kleine Speicherblöcke freizugeben. Für Python-Objekte wie Ganzzahlen, Gleitkommazahlen und Listen verfügen sie über eigene unabhängige private Speicherpools, und ihre Speicherpools werden nicht von Objekten gemeinsam genutzt. Das heißt, wenn Sie eine große Anzahl von Ganzzahlen zuweisen und freigeben, kann der zum Zwischenspeichern dieser Ganzzahlen verwendete Speicher nicht mehr den Gleitkommazahlen zugewiesen werden.

Python Decorator ist eine Funktion, eine einzigartige Änderung in Python, die das Ändern von Funktionen erleichtert. Es ermöglicht einer Funktion, dynamisch zusätzliche Funktionen zu generieren, ohne ihre eigene Funktionsdefinition zu ändern.

5. Was ist ein Python-Dekorator?

Python Decorator ist eine Funktion, eine einzigartige Änderung in Python, die das Ändern von Funktionen erleichtert. Es ermöglicht einer Funktion, dynamisch zusätzliche Funktionen zu generieren, ohne ihre eigene Funktionsdefinition zu ändern. Iteratoren, Generatoren

Iterierbare Objekte: Objekte, die mit for-in durchlaufen werden können, sind alle iterierbare Objekte

Wenn in Python ein Objekt über eine __iter__()-Methode oder eine __getitem__()-Methode verfügt, heißt es Dieses Objekt ist iterable (Iterable); die Methode __iter__() ermöglicht das Durchlaufen des Objekts mithilfe einer for...in-Schleife, und die Methode __getitem__() ermöglicht den Zugriff auf das Objekt über die Elemente „Instanzname [Index]“ in der Instanz . Mit anderen Worten: Solange eine der beiden Bedingungen erfüllt ist, kann das Objekt als iterierbar bezeichnet werden. Offensichtlich sind Datentypen wie List, Tuple, Dictionary und String alle iterierbar.

Iterator: Iterator ist eine Möglichkeit, auf die Elemente einer Sammlung zuzugreifen. Ein Objekt, das mit for-in durchlaufen und mit der nächsten Funktion iteriert werden kann

Wenn ein Objekt in Python eine __iter__()-Methode und eine __next__()-Methode hat, wird das Objekt als Iterator bezeichnet, wobei die __iter__()-Methode gilt Ermöglicht das Durchlaufen des Objekts mithilfe einer for...in-Schleife, und die Methode __next__() ermöglicht dem Objekt den Zugriff auf das nächste Element über next (Instanzname). Hinweis: Diese beiden Methoden müssen gleichzeitig verfügbar sein, um als Iterator bezeichnet zu werden. Obwohl Datentypen wie List, Tuple, Dictionary und String iterierbar sind, sind sie keine Iteratoren, da sie keine next()-Methode haben.

6. Funktionsabschluss

Eine Funktion, die auf eine freie Variable verweist, ist ein Abschluss. Die referenzierte freie Variable existiert mit der Funktion, auch wenn sie die Umgebung verlassen hat, in der sie erstellt wurde.

7. Was ist die? Unterschied zwischen Arrays und Tupeln?

Der Unterschied zwischen Arrays und Tupeln: Array-Inhalte können geändert werden, während Tupel-Inhalte schreibgeschützt sind. Darüber hinaus können Tupel gehasht werden, z. B. als Wörterbuchschlüssel.

8. Klassenmethoden und statische Methoden

Methode: Durch Instanzaufrufe können Sie auf alle Attribute und Methoden innerhalb der Klasse verweisen

Klassenmethode: Keine Instanziierung erforderlich, Sie können Klassenattribute und Klassenmethoden aufrufen, normale Mitglieder nicht Erhaltene Attribute und Methoden

Statische Methode: Es ist keine Instanziierung erforderlich, es können keine Attribute und Methoden innerhalb der Klasse abgerufen werden, eine völlig unabhängige Methode

9 Welche integrierten Typen bietet Python?

Ganzzahl (int), Zeichenfolge (str), Tupel (tuple), Boolean (bool), Menge (set), Liste (list), Wörterbuch (dict)

10, Wörterbuchverständnis und Listenverständnis Was ist das?

Es handelt sich um Syntaxstrukturen, die das Erstellen von Wörterbüchern und Listen erleichtern.

Wie werden Parameter als Wert und Referenz übergeben?

Alles in Python ist eine Klasse und alle Variablen sind Verweise auf ein Objekt. Der Wert der Referenz wird durch die Funktion bestimmt und kann daher nicht geändert werden. Aber wenn ein Objekt geändert werden kann, können Sie das Objekt ändern.

11. Was ist Lambda in Python?

Dies ist eine anonyme Funktion, die häufig für einen einzelnen Ausdruck im Code verwendet wird.

12. Was ist Pass in Python?

pass ist ein Platzhalter, der ein Leerzeichen darstellt und nicht ausgeführt wird.

13. Was ist der Unterschied zwischen flachem Kopieren und tiefem Kopieren in Python?

copy.copy() Flache Kopie: Das Objekt wird kopiert, aber der Wert des kopierten Objekts zeigt immer noch auf den Wert des Originalobjekts (entspricht einer Referenz). Der Wert des kopierten Objekts wird ebenfalls geändert.

copy.deepcopy() Deep Copy: Kopiert nicht nur das Objekt, sondern kopiert auch die Elemente im Objekt und erhält so ein brandneues Objekt, das vom kopierten Objekt völlig unabhängig ist. Dies erfordert jedoch einen gewissen Zeitaufwand Raum.

14. Was sind Module und Pakete in Python?

In Python sind Module eine Möglichkeit, Programme zu erstellen. Jede Python-Codedatei ist ein Modul und kann auf andere Module wie Objekte und Eigenschaften verweisen.

Ein Ordner mit vielen Python-Codes ist ein Paket. Ein Paket kann Module und Unterordner enthalten.

Das obige ist der detaillierte Inhalt vonWas sind die häufigsten Fragen in Python-Interviews?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn