ich habe mir ein neuse verzeichnis (Opensuse /Python3) erstellt in dem ich meine lustigen ersten Gehversuche in Python starte
wenn im meinem file sowas steht:
import socket
und ich das nutze
python3 datei.py
bin im verzeichnis der datei..
dann kommt erstmal mecker:
client_socket = socket(socket.AF_INET, socket.SOCK_STREAM)
TypeError module objekt is not callable
- natürlich googel bemüht - da ging es zwar immer in den Antworten um eigene module aber egal
nächste versuch
from socket import socket
dann der:
"AttributeError: type objekt 'socket' has no attribute 'AF_INET'
ich habe mal beschlossen das die installation von Python nicht passt wenn der schon mal so grundlegene sachen wie socket nicht kann
woran kann es liegen das import nicht geht wie in den vielen internet beispielen ??
import probleme
Lass mich raten: du hast dein erstes skript passend zum Thema “socket.py” genannt?
Damit überschattet das das echte socket Modul. Benenn die Datei um, entferne eine ggf rumliegende .pyc Datei & erlebe eine wunderheilung deiner Installation.
Damit überschattet das das echte socket Modul. Benenn die Datei um, entferne eine ggf rumliegende .pyc Datei & erlebe eine wunderheilung deiner Installation.
Bei socket ist das Problem, dass das Modul socket heißt, und die Klasse auch socket. Die Konstanten sind aber auf dem Modul definiert, wenn Du also die Klasse socket nennst, sind die Konstanten natürlich nicht verfügbar.
Und falls Du ein Beispiel aus dem Internet hast, das ist garantiert kompletter Schrott. Was möchtest Du denn mit dem Socket machen?
Code: Alles auswählen
import socket
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
nur aus Neugier: wie soll man sonst lernen wenn nicht aus Code von anderen ?
Socket = Datentransport von A nach B über Netzwerk in meinem fall json daten , später aufgemotzt zu einer Verbindung zu
Vert.x (ich weiss auch das es schon Software dazu gibt - nur wollte ich das selbst angehen - auch um die Sprache zu lernen )
- __blackjack__
- User
- Beiträge: 12984
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
@melmager: Das Problem bei Socket-Code ist genau das was Sirius3 schrieb: Der den man da draussen in Beispielen findet, ist zu 99,9% Schrott, weil falsch. Wobei man das insbesondere als Anfänger nicht merkt, weil der Code scheinbar funktioniert. Also man kann da natürlich schon von Code von anderen lernen, aber man muss wirklich sicherstellen das derjenige *Ahnung* von dem hat, was er da macht.
“Most people find the concept of programming obvious, but the doing impossible.” — Alan J. Perlis