@TrayserCassa: Nackte ``except:``\s ohne Angabe von konkreten Ausnahmen, die man im ``try``-Block erwartet, sollte man unbedingt vermeiden. Denn dann werden *alle* Ausnahmen im ``except``-Block behandelt, auch solche, mit denen überhaupt nicht gerechnet hat. Und für die wird dann etwas unpassendes getan. Zum Beispiel könnte man sich im ``try``-Block bei einem Namen vertippen und der Benutzer bekommt dann die Ausgabe, dass es sich nicht um eine Zahl handelt. Obwohl er vielleicht eine eingegeben hat. Und als Programmierer darf man dann einen Fehler suchen zu dem man nie eine Ausnahme zu Gesicht bekommt.
Deshalb Teste ich doch mein Code vorerst

Das haben ich ebenfalls aus dem Buch
Von ``continue`` würde ich persönlich Abstand nehmen. Das ist ein Sprung aus einer verschachtelten Struktur an den Schleifenanfang, den man der Quelltextstruktur nicht so ohne weiteres ansieht. Ausserdem verbaut man sich die Möglichkeit etwas am Ende von jedem Schleifendurchlauf zu tun, weil das ``continue`` ja so eine Art Abkürzung zum Anfang der Schleife nimmt.
hmm Aber Genau das will ich ja

falls was nicht stimmt fang wieder von vorne an

Ich wüsste spontan auch nicht wie ich sonst schreiben müsste ... Ich bin ein Anfänger im bereich Python und Lese das Buch dazu (Einstieg in Python) und da hab ich es ja her

Ich verbaue mir was nur wenn ich wichtige variabeln nicht da drüber schreibe und daran werde ich ja nochwohl denken
Das ``continue`` am Ende der Schleife im ``else`` ist zudem überflüssig, denn dort würde die Schleifenausführung auch ohne diese Anweisung von vorne beginnen. Statt des anderen ``continue`` hätte man zum ``except`` ein ``else`` verwenden können, oder die `is_decimal()`-Methode auf Zeichenketten anstelle des `int()`-Aufrufs zum Testen.
ok das "continue" ist überflüssig ich poliere den Code eben schnell
except --> else :K Kein Plan was du meinst ich kenn verzweigung nur mit except

"is_decimal()" Ich verwende ausschließlich Module die ich kenne aus dem Buch

Ergebniss ist in dem Fall ja das selbe oder?
Beim `subprocess.call()` am Ende übergibst Du die Argumente falsch. Das wird ja nicht von einer Shell in einzelne Argumente zerlegt, sondern muss vom Programmierer als Liste angegeben werden.
also so?:
subprocess.call(["netsh", "IP" "set"]shell=True) (Nur als beispiel IP und set.)
Ausserdem enthält `net` bestimmt nicht das was Du erwartet hast. In Python fügen doppelte doppelte Anführungszeichen *nicht* doppelte Anführungszeichen in ein Zeichenkettenliteral ein:
Code:
In [1]: "interface ip set address ""Local Area Connection"" static "
Out[1]: 'interface ip set address Local Area Connection static '
Was hier passiert sind einfach mehrere Zeichenkettenliterale die direkt nebeneinander stehen. Und der Compiler fügt literale Zeichenketten, die nur durch gar nichts oder „whitespace”-Zeichen getrennt sind, beim Übersetzen automatisch zu einer Zeichenkette zusammen:
Ja habs bemerkt bloß kann ich in diesem Fall die "" auch weglassen, da Sie im befahl netsh nicht weiter wichtig sind

ich habe extra eine Variabel genommen und dahinter print(net) eingesetzt die ausgabe kopiert und in die cmd mit dem befehl eingegeben

Klappt nicht ... Siehe unten
Die 255 sollte man vielleicht auch nicht eingeben. Das kann je nach Subnetzmaske eine spezielle Bedeutung haben. Man könnte auch testen ob die Zahl zwischen 1 und 254 (inklusive) liegt.
ok bearbeitet, aber wir reden nur von einem Programm was Freunde anwenden, wenn ich auch anwesend bin

Falls es dann Probleme gibt
Vielleicht noch besser oder einfacher wäre es wenn Du den Benutzer nicht fragst, sondern eine Liste mit Zahlen von 1 bis 254 erzeugst, die mischst (random.shuffle()) und dann so lange probierst, bist Du eine freie IP gefunden hast. Das Mischen damit mehrere Leute, die das gleichzeitig laufen lassen, nicht so leicht „kollidieren”.
Die Idee ist mir auch schon gekommen, allerdings ist unser standart Host 192.168.0.20 und dann gibs von manchen wieder extra wünsche und die wollen dann mal Host sein und so ein Kindermisst mehr

Viel besser wäre es eine Zufalls IP generieren zu lassen und dann den Anwender zu fragen ob er die benutzen will oder doch lieber eine eintippen möchte

Aber soll nur ein Übungsscript werden
Neues Problem
Netsh kann nur unter Administrator rechten ausgeführt werden
Eine Lösung wäre aus dem Code eine exe zu machen (p2exe) aber geht das auch für Code aus Python3.2 ?
Oder eine Lösung die für ein Einsteiger noch übersichtlich ist
ok Danke bis jetzt klappt alles bis auf der befehl mit netsh..
mfg
Trayser