κατά ζεύγη σύγκριση των ακεραίων στη λίστα

ψήφοι
1

Αυτό που προσπαθώ να κάνω είναι να συγκρίνουμε ακέραιοι μέσα σε ζεύγη.

αν έχω μια λίστα με τα ζεύγη

[(10, 5), (6, 3), (2, 20), (100, 80)]

Θα ήθελα να συγκρίνετε x> y για κάθε ένα από τα ζεύγη και να επιστρέψει False εάν κάποιο από τα ζεύγη δεν πληρούν την προϋπόθεση

def function(list_or_tuple):
num_integers = len(list_or_tuple)

pairs_1 = list(zip(list_or_tuple[::2], list_or_tuple[1::2]))
print(pairs_1)
#pairs_2 = list(zip(list_or_tuple[1::2], list_or_tuple[2::2]))
#print(pairs_2)

for x1, y1 in pairs_1:
    return bool(x1 > y1)

και το πρόγραμμα μου συνεχίζει να επιστρέφει True για το παραπάνω παράδειγμα

Πιστεύω ότι το πρόγραμμα δοκιμάζει μόνο το πρώτο ζεύγος, η οποία είναι (10,5)

τι πρέπει να κάνω για να κάνει τεστ το πρόγραμμά μου όλα τα ζευγάρια στη λίστα;

Δημοσιεύθηκε 20/10/2018 στις 12:45
πηγή χρήστη
Σε άλλες γλώσσες...                            


1 απαντήσεις

ψήφοι
3

Θα ήταν πολύ πιο εύκολο να χρησιμοποιήσετε τη allλειτουργία με μια λίστα κατανόηση:

lst = [(10, 5), (6, 3), (2, 20), (100, 80)]
result = all(x[0] > x[1] for x in lst)
Απαντήθηκε 20/10/2018 στις 12:54
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more