Heim  >  Artikel  >  Backend-Entwicklung  >  [Hämatemesis-Zusammenstellung] 50 Fragen und Antworten zu Python-Interviews (Sammlung)

[Hämatemesis-Zusammenstellung] 50 Fragen und Antworten zu Python-Interviews (Sammlung)

青灯夜游
青灯夜游nach vorne
2022-06-30 11:23:174695Durchsuche

Dieser Artikel fasst 50 Fragen und Antworten zu Python-Interviews für Sie zusammen. Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

[Hämatemesis-Zusammenstellung] 50 Fragen und Antworten zu Python-Interviews (Sammlung)

Python ist derzeit die beliebteste Sprache im Bereich Programmierung. In diesem Artikel fasse ich die 50 häufigsten Python-Interviewfragen zusammen. Zu jeder Frage werden Referenzantworten bereitgestellt, die Ihnen dabei helfen sollen, im Vorstellungsgespräch im Jahr 2019 herauszuragen und einen gut bezahlten Job zu finden. Diese Interviewfragen decken viele Aspekte wie Python-Grundlagen, Python-Programmierung, Datenanalyse und Python-Funktionsbibliotheken ab.

F1. Was ist der Unterschied zwischen Listen und Tupeln in Python?

F2. Was sind die Hauptfunktionen von Python?

Python ist eine interpretierte Sprache. Im Gegensatz zu Sprachen wie C muss Python vor der Ausführung nicht kompiliert werden.

Python ist eine dynamische Sprache. Wenn Sie eine Variable oder ähnliches deklarieren, müssen Sie den Typ der Variablen nicht deklarieren.

Python eignet sich für die objektorientierte Programmierung, da es die Definition von Klassen sowie deren Zusammensetzung und Vererbung ermöglicht. Python hat keine Zugriffsspezifikationen (wie öffentlich, privat in C++).

In Python sind Funktionen erstklassige Objekte. Sie können Variablen zugewiesen werden. Klassen sind ebenfalls erstklassige Objekte

Das Schreiben von Python-Code ist schnell, aber die Ausführung ist langsamer. Python ermöglicht C-basierte Erweiterungen wie die Numpy-Funktionsbibliothek.

Python kann in vielen Bereichen eingesetzt werden. Entwicklung von Webanwendungen, Automatisierung, mathematische Modellierung, Big-Data-Anwendungen und mehr. Es wird auch oft als „Klebecode“ verwendet.

Q3. Ist Python eine Allzweck-Programmiersprache?

Python ist in der Lage, Skripte zu schreiben, gilt aber im Allgemeinen als eine Allzweck-Programmiersprache.

F4. Wie interpretiert Python Sprache?

Python muss das Programm nicht interpretieren, bevor es ausgeführt wird. Daher ist Python eine interpretierte Sprache.

F5. Was ist Pep?

PEP steht für Python Enhancement Proposal. Dabei handelt es sich um eine Reihe von Regeln, die festlegen, wie Python-Code für maximale Lesbarkeit formatiert wird.

F6. Wie verwalte ich den Speicher in Python?

Die Speicherverwaltung in Python wird durch den privaten Heap-Speicherplatz von Python verwaltet. Alle Python-Objekte und Datenstrukturen befinden sich im privaten Heap. Der Programmierer hat keinen Zugriff auf diesen privaten Heap. Dafür sorgt der Python-Interpreter.

Die Heap-Speicherplatzzuweisung für Python-Objekte erfolgt durch den Speichermanager von Python. Die Kern-API bietet Programmierern einige Tools zum Schreiben von Code.

Python verfügt außerdem über einen integrierten Garbage Collector, der den gesamten ungenutzten Speicher zurückgewinnt und ihn für Heap-Speicherplatz verfügbar macht.

F7. Was ist der Namespace in Python?

Namespace ist ein Benennungssystem, mit dem sichergestellt wird, dass Namen eindeutig sind, um Namenskonflikte zu vermeiden.

F8. Was ist PYTHONPATH?

Es handelt sich um eine Umgebungsvariable, die beim Importieren von Modulen verwendet wird. Immer wenn ein Modul importiert wird, wird auch PYTHONPATH nachgeschlagen, um zu prüfen, ob das importierte Modul in den jeweiligen Verzeichnissen vorhanden ist. Dies wird vom Interpreter verwendet, um zu bestimmen, welche Module geladen werden sollen.

F9. Was ist ein Python-Modul? Welche sind die am häufigsten verwendeten integrierten Module in Python?

Python-Module sind .py-Dateien, die Python-Code enthalten. Dieser Code kann eine Funktionsklasse oder eine Variable sein. Zu den häufig verwendeten integrierten Modulen gehören: sys, math, random, data time, JSON.

F10. Was sind lokale Variablen und globale Variablen in Python?

Globale Variablen: Variablen, die außerhalb einer Funktion oder im globalen Raum deklariert werden, werden globale Variablen genannt. Auf diese Variablen kann von jeder Funktion im Programm zugegriffen werden.

Lokale Variablen: Jede innerhalb einer Funktion deklarierte Variable wird als lokale Variable bezeichnet. Diese Variable existiert im lokalen Raum, nicht im globalen Raum.

F11. Ist bei Python die Groß-/Kleinschreibung beachtet?

Ja. Python ist eine Sprache, bei der die Groß-/Kleinschreibung beachtet wird.

F12. Was ist Typkonvertierung in Python?

Typkonvertierung bezieht sich auf die Konvertierung eines Datentyps in einen anderen Datentyp.

int() – Konvertieren Sie jeden Datentyp in einen Ganzzahltyp.

float() – Konvertieren Sie einen beliebigen Datentyp in einen Float-Typ.

ord() – Konvertieren Sie ein Zeichen in eine Ganzzahl.

hex() – Konvertieren Sie eine Ganzzahl in Zehner-Hexadezimal () – Wandelt eine Ganzzahl in eine Oktalzahl um.

tuple() – Diese Funktion wird zum Konvertieren in ein Tupel verwendet.

set() – Diese Funktion gibt den Typ nach der Konvertierung in Set zurück.

list() – Diese Funktion wird verwendet, um jeden Datentyp in einen Listentyp zu konvertieren.

dict() – Diese Funktion wird verwendet, um ein sequentielles Tupel (Schlüssel, Wert) in ein Wörterbuch umzuwandeln.

str() – wird zum Konvertieren einer Ganzzahl in einen String verwendet.

complex(real, image) – Diese Funktion wandelt eine reelle Zahl in eine komplexe (reelle, image) Zahl um.

F13. Wie installiere ich Python unter Windows und lege Pfadvariablen fest?

Um Python unter Windows zu installieren, befolgen Sie bitte diese Schritte:

Installieren Sie Python über den folgenden Link: https://http://www.python.org/downloads/

Nach dem Herunterladen installieren Sie es auf Ihrem PC. Finden Sie heraus, wo PYTHON auf Ihrem PC installiert ist, indem Sie den folgenden Befehl an einer Eingabeaufforderung eingeben: cmd python.

Gehen Sie dann zu den erweiterten Systemeinstellungen, fügen Sie eine neue Variable hinzu, nennen Sie sie PYTHON_NAME und fügen Sie den kopierten Pfad ein.

Suchen Sie die Pfadvariable, wählen Sie ihren Wert aus und wählen Sie Bearbeiten.

Wenn der Wert nicht vorhanden ist, fügen Sie am Ende des Werts ein Semikolon hinzu und geben Sie %PYTHON_HOME% ein.

F14 Ist in Python eine Einrückung erforderlich?

Einrückung ist für Python erforderlich. Es gibt einen Codeblock an. Der gesamte Code innerhalb von Schleifen, Klassen, Funktionen usw. wird in eingerückten Blöcken angegeben. Dies geschieht in der Regel mit vier Leerzeichen. Wenn Ihr Code nicht an den erforderlichen Stellen eingerückt ist, wird er nicht ordnungsgemäß ausgeführt und es wird außerdem ein Fehler ausgegeben.

F15. Was ist der Unterschied zwischen Python-Arrays und -Listen?

Arrays und Listen in Python haben die gleiche Art der Datenspeicherung. Ein Array kann jedoch nur ein einzelnes Datentypelement enthalten, während eine Liste jedes beliebige Datentypelement enthalten kann.

F16. Was sind Funktionen in Python?

Eine Funktion ist ein Codeblock, der nur ausgeführt wird, wenn er aufgerufen wird. Um eine Funktion in Python zu definieren, müssen Sie das Schlüsselwort def verwenden.

F17. Was ist __init__?

__init__ ist eine Methode oder Struktur in Python. Diese Methode wird automatisch aufgerufen, um Speicher zuzuweisen, wenn ein neues Objekt/eine neue Instanz der Klasse erstellt wird. Alle Klassen verfügen über die Methode __init__.

F18. Was ist eine Lambda-Funktion?

Die Lambda-Funktion wird auch als anonyme Funktion bezeichnet. Diese Funktion kann eine beliebige Anzahl von Parametern enthalten, kann jedoch nur eine Anweisung zum Ausführen einer Operation enthalten.

F19. Was ist self in Python?

self ist eine Instanz oder ein Objekt einer Klasse. In Python ist self im ersten Parameter enthalten. Dies ist in Java jedoch nicht der Fall, es ist optional. Es hilft, zwischen Methoden und Eigenschaften einer Klasse zu unterscheiden, die über lokale Variablen verfügt. Die Variable self in der Init-Methode bezieht sich auf das neu erstellte Objekt, während sie sich in anderen Methoden auf das Objekt bezieht, dessen Methode aufgerufen wird.

Q20. Unterscheiden Sie zwischen Pause, Weitermachen und Passen?

Q21. Was bedeutet [:: - 1}?

[:: - 1] wird verwendet, um die Reihenfolge eines Arrays oder einer Sequenz umzukehren.

F22. Wie randomisiere ich Elemente in einer Liste in Python?

Mit der Shuffle-Funktion können Sie Listenelemente zufällig anordnen. Ein Beispiel lautet wie folgt:

Die Codeausgabe lautet:

Q23 Was ist ein Python-Iterator?

Iteratoren sind Objekte, die durchlaufen oder iteriert werden können.

F24. Wie generiert man Zufallszahlen in Python?

Zufallsmodul ist ein Standardmodul zum Generieren von Zufallszahlen. Die Methode ist wie folgt definiert:

Die Methode random.random() gibt eine Gleitkommazahl im Bereich [0,1] zurück. Diese Funktion generiert zufällige Gleitkommazahlen. Die von der Zufallsklasse verwendete Methode ist die Bindungsmethode der versteckten Instanz. Sie können Instanzen von Random verwenden, um Multithread-Programme anzuzeigen, die verschiedene Thread-Instanzen erstellen. Weitere dort verwendete Zufallsgeneratoren sind:

randrange(a,b): Er wählt eine ganze Zahl aus und definiert den Bereich zwischen [a,b]. Es gibt Elemente zurück, indem es Elemente aus dem angegebenen Bereich zufällig auswählt. Es werden keine Bereichsobjekte erstellt.

uniform(a,b): Wählt eine Gleitkommazahl aus, die im Bereich [a,b) definiert ist.

normalvariate(mean,sdev): Wird für die Normalverteilung verwendet, wobei „mean“ der Mittelwert ist und „sdev“ für verwendet wird Sigma der Standardabweichung.

Erstellen Sie einen unabhängigen Generator für mehrere Zufallszahlen unter Verwendung und Instanziierung der Random-Klasse.

Q25. Was ist der Unterschied zwischen range und xrange?

In den meisten Fällen sind xrange und range funktional identisch. Beide bieten eine Möglichkeit, eine Liste von Ganzzahlen zu generieren. Der einzige Unterschied besteht darin, dass „range“ ein Python-Listenobjekt und „xrange“ ein xrange-Objekt zurückgibt. Das bedeutet, dass xrange zur Laufzeit keine statische Liste generiert. Mithilfe einer speziellen Technik namens Yieling werden nach Bedarf Werte erstellt. Diese Technik funktioniert mit einem Objekt namens Generator. Wenn Sie also eine sehr große Liste haben, sollten Sie xrange in Betracht ziehen.

F26. Wie schreibe ich Kommentare in Python?

Kommentare in Python beginnen mit dem #-Zeichen. Kommentare können auch mithilfe von Doc-Strings (in dreifache Anführungszeichen eingeschlossene Zeichenfolgen) erstellt werden.

Q27. Was sind Beizen und Abbeizen?

Das Pickle-Modul akzeptiert jedes Python-Objekt, wandelt es in eine String-Darstellung um und speichert es mithilfe der Dump-Funktion in einer Datei. Dieser Vorgang wird Pickling genannt. Der Vorgang des Abrufens ursprünglicher Python-Objekte aus gespeicherten Zeichenfolgen wird als Unpickling bezeichnet.

F28. Was ist ein Generator in Python?

Eine Funktion, die eine iterierbare Menge von Elementen zurückgibt, wird als Generator bezeichnet.

F29. Wie schreibt man den ersten Buchstaben einer Zeichenfolge groß?

In Python kann die Funktion „capitalize()“ den ersten Buchstaben einer Zeichenfolge großschreiben. Wenn die Zeichenfolge am Anfang bereits Großbuchstaben enthält, wird die ursprüngliche Zeichenfolge zurückgegeben.

F30. Wie konvertiere ich eine Zeichenfolge vollständig in Kleinbuchstaben?

Um eine Zeichenfolge in Kleinbuchstaben umzuwandeln, können Sie die Funktion „lower()“ verwenden.

F31. Wie kommentiere ich mehrere Zeilen in Python?

Beim Kommentieren mehrerer Codezeilen. Vor allen zu kommentierenden Zeilen muss ein # stehen. Sie können die Tastenkombination auch zum Auskommentieren mehrerer Zeilen verwenden, indem Sie die Strg-Taste gedrückt halten, mit der linken Maustaste klicken und an jeder Stelle, an der Sie ein #-Zeichen einfügen möchten, einmal # eingeben.

F32. Was sind Dokument-Docstrings in Python?

Docstrings sind eigentlich keine Kommentare, sondern Docstrings. Diese Dokumentzeichenfolgen werden in dreifache Anführungszeichen gesetzt. Sie sind keiner Variablen zugeordnet und werden daher manchmal in Kommentaren verwendet.

F33. Welche Funktionen haben die Operatoren is, not und in?

Operatoren sind spezielle Funktionen, die einen oder mehrere Werte vergleichen und entsprechende Ergebnisse erzeugen. Dabei ist: Gibt „true“ zurück, wenn 2 Operanden wahr sind (Beispiel: „a“ ist „a“) Werden die Funktionen help() und dir() in Python verwendet?

Auf die beiden Funktionen Help() und dir() kann direkt vom Python-Interpreter aus zugegriffen werden und sie werden zum Anzeigen zusammengeführter Dumps integrierter Funktionen verwendet.

help()-Funktion: Die help()-Funktion wird verwendet, um Dokumentationszeichenfolgen anzuzeigen und auch Nutzungsinformationen zu Modulen, Schlüsselwörtern, Eigenschaften usw. anzuzeigen.

dir()-Funktion: Die dir()-Funktion wird verwendet, um das definierte Symbol anzuzeigen.

F35. Warum wird beim Beenden von Python nicht der gesamte zugewiesene Speicher gelöscht?

Wenn Python beendet wird, werden insbesondere die Python-Module, die Zirkelverweise auf andere Objekte oder Objekte haben, auf die aus dem globalen Namespace verwiesen wird, nicht freigegeben oder freigegeben.

Es gibt keine Möglichkeit, die von der C-Bibliothek reservierten Speicherbereiche freizugeben.

Beim Beenden versucht Python aufgrund seines eigenen effizienten Bereinigungsmechanismus, alle anderen Objekte freizugeben/zu zerstören.

Q36. Was ist ein Wörterbuch in Python?

Der in Python integrierte Datentyp heißt Wörterbuch. Es definiert eine Eins-zu-Eins-Beziehung zwischen Schlüsseln und Werten. Ein Wörterbuch enthält ein Schlüsselpaar und die entsprechenden Werte. Wörterbücher werden nach Schlüsseln indiziert.

F37. Wie verwende ich den ternären Operator in Python?

Der ternäre Operator ist ein Operator zur Anzeige bedingter Anweisungen. Dieser enthält einen wahren oder falschen Wert und für den die Aussage ausgewertet werden muss. Seine grundlegende Syntax ist:

Der ternäre Operator ist ein Operator, der zum Anzeigen von bedingten Anweisungen verwendet wird. Dieser enthält einen wahren oder falschen Wert und für den die Aussage ausgewertet werden muss. Die grundlegende Syntax lautet:

[on_true] if [expression] else [on_false] x, y = 25,50big = x if x

Q38. Warum *args, **kwargs verwenden?

Wir verwenden *args, wenn wir nicht sicher sind, wie viele Argumente wir an die Funktion übergeben sollen, oder wenn wir eine gespeicherte Liste oder ein Tupel von Argumenten an die Funktion übergeben möchten. **Kwargs werden verwendet, wenn wir nicht wissen, wie viele Schlüsselwortargumente wir an eine Funktion übergeben müssen, oder sie können verwendet werden, um Werte eines Wörterbuchs als Schlüsselwortargumente zu übergeben. Die Bezeichner args und kwargs sind eine Konvention, Sie können auch *bob und **billy verwenden.

F39. Was ist die Funktion der len()-Funktion? Die Funktion

len() kann verwendet werden, um die Länge von Zeichenfolgen, Listen, Arrays usw. zu bestimmen.

Q40. Split(), sub(), subn() Funktionen in Python.

Wenn Sie eine Zeichenfolge ändern möchten, bietet das „re“-Modul von Python drei Methoden. Dies sind:

split() – „Teilt“ die angegebene Zeichenfolge mithilfe eines regulären Ausdrucksmusters in eine Liste auf.

sub() – Findet alle Teilzeichenfolgen, die einem regulären Ausdrucksmuster entsprechen, und ersetzt sie durch andere Zeichenfolgen.

subn() – Es ähnelt sub() und gibt auch die neue Zeichenfolge zurück.

F41. Was ist ein negativer Index und welche Funktion hat er?

Sequenzen in Python sind indiziert und bestehen aus positiven und negativen Zahlen. Positive Zahlen verwenden „0“ als ersten Index und „1“ als zweiten Index, den der Prozess weiterhin verwendet.

Indizes für negative Zahlen beginnen bei „-1“, was den letzten Index in der Sequenz darstellt, und „-2“ als vorletzten Index, und die Sequenz schreitet wie positive Zahlen voran.

Negative Indizierung wird verwendet, um alle Zeilenumbrüche aus einer Zeichenfolge zu entfernen und zu ermöglichen, dass die Zeichenfolge mit Ausnahme des letzten als S[:-1] angegebenen Zeichens bleibt. Eine negative Indizierung wird auch verwendet, um zu zeigen, dass der Index die Zeichenfolge in der richtigen Reihenfolge darstellt.

F42. Was ist ein Python-Paket?

Ein Python-Paket ist ein Namespace, der mehrere Module enthält.

F43. Wie lösche ich Dateien in Python?

Um Dateien in Python zu löschen, müssen Sie das Betriebssystemmodul importieren. Danach müssen Sie die Funktion os.remove() verwenden.

F44. Was sind die in Python integrierten Typen?

Die in Python integrierten Typen sind wie folgt: Ganzzahl, Gleitkomma, komplexe Zahl, Zeichenfolge, Boolescher Wert usw.

F45. Welche Funktionen gibt es in NumPy, um Python-Listen zu bedienen?

Pythons Listen sind effiziente Allzweckcontainer. Sie unterstützen (ziemlich) effizientes Einfügen, Löschen, Anhängen und Verketten, und das Listenverständnis von Python macht sie einfach zu erstellen und zu bearbeiten.

Sie haben bestimmte Einschränkungen: Sie unterstützen keine „vektorisierten“ Operationen wie Pixeladdition und -multiplikation, und die Tatsache, dass sie Objekte unterschiedlichen Typs enthalten können, bedeutet, dass Python für jedes Element Typinformationen speichern und als Typ-Dispatch-Code Code ausführen muss wirkt auf jedes Element.

NumPy ist nicht nur effizienter; es ist auch bequemer. Sie erhalten viele Vektor- und Matrixoperationen kostenlos, was Ihnen manchmal unnötige Arbeit ersparen kann. Sie werden auch effektiv umgesetzt.

NumPy-Arrays sind schneller, Sie können NumPy, FFT, Faltung, schnelle Suche, grundlegende Statistiken, lineare Algebra, Histogramme und mehr integriert verwenden.

F46. Wie füge ich Werte zum Python-Array hinzu?

Elemente können mit den Funktionen append(), extension() und insert(i,x) zu einem Array hinzugefügt werden.

F47. Wie lösche ich den Wert eines Python-Arrays?

Sie können die Methoden „pop()“ oder „remove()“ verwenden, um Array-Elemente zu löschen. Der Unterschied zwischen diesen beiden Funktionen besteht darin, dass erstere den gelöschten Wert zurückgibt, letztere jedoch nicht.

F48. Verfügt Python über das Konzept von OOps?

Python ist eine objektorientierte Programmiersprache. Dies bedeutet, dass jedes Programm in Python durch Erstellen eines Objektmodells gelöst werden kann. Gleichzeitig kann Python als Programmiersprache und Struktursprache betrachtet werden.

F49. Was ist der Unterschied zwischen Deep Copy und Shallow Copy?

Verwenden Sie beim Erstellen eines neuen Instanztyps eine flache Kopie und behalten Sie die kopierten Werte in der neuen Instanz bei. Mit der flachen Kopie wird ein Referenzzeiger genau wie ein Wert kopiert. Diese Verweise verweisen auf das Originalobjekt, und Änderungen, die an einem Mitglied der Klasse vorgenommen werden, wirken sich auch auf dessen Originalkopie aus. Flache Kopien ermöglichen eine schnellere Ausführung von Programmen, abhängig von der Größe der verwendeten Daten.

Deep Copy wird zum Speichern kopierter Werte verwendet. Bei einer tiefen Kopie wird der Referenzzeiger nicht auf das Objekt kopiert. Es verweist auf ein Objekt und speichert ein neues Objekt, auf das das andere Objekt zeigt. An der Originalkopie vorgenommene Änderungen wirken sich nicht auf andere Kopien aus, die das Objekt verwenden. Eine tiefe Kopie kann die Ausführung eines Programms verlangsamen, da für jedes aufgerufene Objekt eine Kopie erstellt wird.

F50. Wie implementiert man Multithreading in Python?

Python verfügt über eine Multithreading-Bibliothek, aber der Effekt der Verwendung von Multithreading zur Beschleunigung des Codes ist nicht so gut.

Python verfügt über eine Struktur namens Global Interpreter Lock (GIL). Die GIL stellt sicher, dass jeweils nur ein „Thread“ ausgeführt werden kann. Ein Thread erhält die GIL, um relevante Vorgänge auszuführen, und übergibt die GIL dann an den nächsten Thread.

Während es den Anschein hat, dass das Programm von mehreren Threads parallel ausgeführt wird, nutzen sie in Wirklichkeit nur abwechselnd denselben CPU-Kern.

Alle diese GIL-Durchgänge erhöhen den Overhead bei der Ausführung. Dies bedeutet, dass Multithreading das Programm nicht schneller laufen lässt.

【Verwandte Empfehlung: Python3-Video-Tutorial

Das obige ist der detaillierte Inhalt von[Hämatemesis-Zusammenstellung] 50 Fragen und Antworten zu Python-Interviews (Sammlung). Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:csdn.net. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen