Wpis z mikrobloga

#python #programowanie
Ok, mam listę typu:
[23, 43, 45, 39, 18, 20]
[6, 8, 3, 37, 22, 31]
[22, 9, 6, 21, 42, 38]
[15, 24, 18, 27, 30, 34]
....
Z każdej linijki muszę wyciągnąć ostatnią cyfrę każdej liczby, porównać - jeśli w jednym układzie występują 4 numery z taką samą ostatnią cyfrą to ją wypisać. Nie mam pojęcia jak to ugryźć, jakieś porady?
  • 14
1. przerabiasz wszystkie inty na stringi (możesz użyć map lub list comprehension)
2. ze stringa wyciągasz ostatni znak (cyfrę) używając ujemnego indexowania
3. Porównania załatwiasz ifami lub możesz pogrupować końcówki używając defaultdict
4. Wypisywanie printem ;)
@Emandero:

2. ze stringa wyciągasz ostatni znak (cyfrę) używając ujemnego indexowania

lista[-1]? Próbowałem tego, ale w moim przypadku zwraca ostatni element, zamiast cyfry, czyli tu: 20, 31, 38, 34.... Ale może dlatego że nie robiłem tego co w pierwszym punkcie napisałeś. Załatwi to sprawę?
Z 3 i 4 punktem sobie już poradzę :)

@szymy: O, to też jakiś pomysł, może nawet łatwiejszy.
@Dawidinho8:

Implementacja z wykorzystaniem Counter z biblioteki collections. Jeśli nie możesz skorzystać to go on z metodą count na listach (np. [1, 1, 2].count(1) ==> 2).

In [1]: from collections import Counter

In [2]: wypok = [
...:_[23, 43, 45, 39, 18, 20],
...:
[6, 8, 3, 37, 22, 31],
...:
[22, 9, 6, 21, 42, 38],
...:
[15, 24, 18, 27, 30, 34],
...:
[21, 31, 41, 51, 62],