Programmieren – die besten Beiträge

Python3: For-Schleife überspringt Element der Liste?

Hallo!

Ich wollte letztens in Python (3.7.4) mit einer for-Schleife durch eine Liste gehen, um jedes Element unter einer bestimmten Bedingung aus der Liste zu löschen.

Eine stark vereinfachte Version könnte so aussehen:

l = [1,2,3,4,5]

for i in l:

____print(i)

____if i == 2: l.remove(i)

____if i == 3: l.remove(i)

print(l)

Hier möchte ich also alle Zweien und Dreien löschen. Das ganze geht natürlich effektiver, übersichtlicher und schöner, aber meine Bedingungen waren ja auch etwas komplizierter und hier geht es nur ums Prinzip.

Die Ausgabe sollte dann meinen Erwartungen entsprechend so aussehen:

1

2

3

4

5

[1,4,5]

Tatsächlich sieht sie dann aber so aus:

1

2

4

5

[1,3,4,5]

In der for-Schleife ist niemals i == 3. Das ist darauf zurückzuführen, dass durch das Löschen der 2 alle Elemente in der Liste einen Platz nach links rutschen, wobei die for-Schleife um das nächste Element durchzugehen einen Schritt weiter nach rechts geht. Dabei werden all jene Elemente übersprungen, die hinter einem zu löschenden Element kommen. Das kann man sich so zwar erklären, ist aber nicht intuitiv.

Und eingebettet in mein Programm hat die Fehlersuche ewig gedauert, wer rechnet schon damit, dass die for-Schleife ein Listenelement überspringt?

Ich wollte euch hier nur diesen interessanten Fund zeigen und euch auch nach eurer Meinung dazu fragen :)

Der beste Lösungsansatz wäre doch die list-Comprehension, oder?

Was sagt ihr dazu?

Viele Grüße! :D

Computer, programmieren, Python 3

Kann man einen fremden Computer zu seinen eigenen machen (hacken)?

Holy Shi*, ich habe gerade einen Film bei Netflix geguckt, welcher Unknown User heißt. Ich wusste ja, dass im Computer / Internet und alles was dazu gehört, vieles möglich ist. Aber als ich diesen Film sah, wusste ich echt nicht mehr, ob das möglich ist.

Für die, die den Film gesehen haben: Gerne direkt antworten. Ich würde mich über jede Antwort freuen!

Für die, die den Film nicht gesehen haben, hier eine Zusammenfassung:

Ein unbekannter Nutzer landet in einem Skype-Telefonat von sechs Jugendlichen. Das Ganze war kein Zufall, denn diese Person war ein Hacker / Stalker, der die Jugendlichen wohl schon lange beobachtet.

Also, wie gesagt: Er geht in diesen Skype-Anruf von den Jugendlichen hinein und die erste Aktion ist: Man kann ihn nicht raußschmeißen oder sein Profil anklicken. Nächste Sache: Er öffnet bei den Jugendlichen 1000 Fenster mit dem gleichen YouTube-Video. Die Jugendlichen können die Fenster nicht schließen, den Ton nicht leise oder lauter machen, den Laptop nicht ausschalten usw..

Als Nächstes schreibt er diesen Jugendlichen von berühmten Personen (Beispiel: Heute wäre Charlie Damilo berühmt mit 1000 Millionen Abonnenten)

von Facebook / Instagram Accounts -> okay, da würde ich noch mitgehen. Man hört auch immer wieder, wie Social Media Accounts gehackt wurden. :/

Nächste Sache: Dieser Hacker hatte vorher bei dem einen Jugendlichen eine Kamera platziert und hatte von dieser Kamera die Skype-Kamera angemacht, sodass sich der Junge gewundert hatte und die Kamera kaputt getreten hatte.

Hauptgrund / heftigste Sache: Der Hacker wusste die ganze Zeit, über was die Jugendlichen schreiben, tun, auf welcher Seite sie sind usw..

Meine Frage: Shit, ist das wirklich möglich, dass eine Person mich mit einem Schlag so zerstören kann, nur weil heftiges PC-Wissen vorhanden ist?

—-> Der Film war übrigens nur ausgedacht. :)

Weitere Frage: Also ich hatte mich sowieso immer schon für dieses Thema interessiert (ich will es nicht nachmachen oder so, mein Gott). Aber wenn das geht, wovon ich ausgehe: Wie zum F*** kann man so etwas lernen? Wo fängt man an? Lädt man sich irgendwelche Programme herunter oder wie werden Leute so gut in etwas?

Ich würde gerne noch mehr schreiben, aber leider darf ich nur noch 200 Zeichen schreiben. Ups.

Ich hoffe, man konnte verstehen, was ich meine und ich würde mich wirklich über jede Antwort freuen!

Computer, hacken, Programm, programmieren

Meistgelesene Beiträge zum Thema Programmieren