Sie sind nicht angemeldet.

mnts

Zuhörer

  • »mnts« ist der Autor dieses Themas

Beiträge: 1

Registrierungsdatum: 25.10.2017

1

25.10.2017, 14:19

Python: Befehl erfüllt Bedingung nicht ganz

Wir brauchen:
1.
Ein Befehl, der Zahlen aus der 1. Variable in eine neuerstellte
Variable einsteckt, und aus der 1. die Zahl löscht (ausschneiden)
2. Er soll alle Zahlen die maximal 3 Einheiten größer sind als die kleinste dort einfügen.
3. Wenn es keine passenden Zahlen mehr gibt, wiederholt er den Vorgang mit den verbleibenden Zahlen.

Wir haben jetzt das Problem, dass das (i) nur jede zweite Zahl bearbeitet.



Code:


  1. x = [2,5,7,9,3,5]

  2. y = []

  3. while len(x) is not 0:

  4. minX = min(x)

  5. print(minX)

  6. for i in x:

  7. if i <= minX+3:

  8. y.append(i)

  9. x.remove(i)

  10. print(x)

  11. y.append(-1)

  12. print(y)


Nun die Frage :?: :
Womit kann man (i) ersetzen oder wie soll man den code verändern?
Danke im vorraus

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »mnts« (25.10.2017, 14:19)


Immanenz

Internetexperte

  • »Immanenz« ist männlich

Beiträge: 67

Registrierungsdatum: 30.09.2013

Wohnort: Hannover

2

25.10.2017, 17:54

Nutze am besten die code-Tags, um dein Problem zu beschreiben.

Grüße,
Matti

Quellcode

1
2
3
4
5
6
#!/usr/bin/env python

def hello_world():
    print("Hello World")

hello_world()

Operator

Praktikant

  • »Operator« ist männlich

Beiträge: 25

Registrierungsdatum: 09.10.2007

3

25.10.2017, 18:00

Es ist ungünstig wenn du Elemente aus x löschst wehrend du darüber iterierst.
Der Mensch verbringt bis zu 30% des Lebens im Schlaf.
==>Mit Kaffe kann man die bewuste Lebenserwartung um bis zu 30% Erhöhen.