2016-04-11 7 views
0

Ich habe Probleme beim Verständnis des Varianten-Syntax-Formats beim Erstellen von Sockets (Ich habe vor ein paar Wochen begonnen, Python zu lernen).Unterschied in der Socket-Syntax

Kann jemand bitte erklären, was ist der Unterschied (wenn überhaupt) zwischen den unten?

  1. s = socket()
  2. s = socket.socket()
  3. s = socket (AF_INET, SOCK_STREAM)

Dank.

+3

Die Antwort hängt davon ab, welche Importe du benutzt hast. 1 und 2 sind die gleichen, wenn sie aus dem gleichen Import stammen –

+0

ja du hast Recht ... Ich habe die Unterschiede, wie du Module importierst, völlig vergessen. Vielen Dank! – kcremona

Antwort

0

Die Unterschiede hängen davon ab, welches Modul Sie verwenden. Wenn Sie from socket import socket, AF_INET, SOCK_STREAM:

  1. Dies funktioniert. s wird nicht initialisiertes Socket-Objekt sein.
  2. Funktioniert nicht, da Socket Konstruktor und kein Modul ist.
  3. Dies wird funktionieren. s wird initialisiertes Socket-Objekt.

Wenn Sie import socket verwenden:

  1. Wird nicht funktionieren, weil Buchsenmodul ist und kein Konstruktor (kein funktions- Sie es nennen kann nicht).
  2. Dies wird funktionieren. s wird nicht initialisiertes Socket-Objekt sein.
  3. Wird nicht funktionieren, da Socket Modul und kein Konstruktor ist.

Hope this Hilfe

Verwandte Themen