#naukaprogramowania #python
mam coś takiego, i chcę wypełniać zerami każdy element listy aż % 7 == 0...
jakoś nie mogę ogarnąć tego num w funkcji for...
bin_list = [] for num in numbers:
bin_list.append(bin(num)[2:]) for num in bin_list:
while len(num) % 7 != 0:
num.zfill(len(num)+1)mam coś takiego, i chcę wypełniać zerami każdy element listy aż % 7 == 0...
jakoś nie mogę ogarnąć tego num w funkcji for...
- Najlepsze
- Wszystkie komentarze







num = "0" + num.A jak tak bardzo chcesz skorzystać z zfill, to pomyśl do wielkości chcesz go rozszeżyć?
Ale nie powinna boleć nikogo, kto chce programować ;)
@ponuryrolnik:
(liczba + dzielna - 1) // dzielna * dzielnaCzyli zwiększasz liczbę o jeden mniej niż dzielna i dzielisz bez reszty, następnie mnożysz, żeby uzyskać wynik podzielny przez tę liczbę.
może być?
tylko tu mi zawsze radzono, żeby ładować wszystko do 1 linijki
@ponuryrolnik: po co to? skoro num będzie inną wartością w każdym przebiegu pętli, to po co robić pętlę z warunkiem od długości tego elementu?
@ponuryrolnik: czyli jak masz np 6 > bin "110" >chcesz by z przodu było dodatkowe 4 zera, by ilość znaków była 7 w sumie? co daje 0000110
Komentarz usunięty przez autora
Gotowe
matematyka nie boli ;)
for num in bin_list:while len(num) % 7 != 0:
num = "0" + num
potem obczaje
No to se dodaj po pętli for dodawanie do listy.
Tylko musisz się nauczyć ogarniać te wcięcia, bo chyba to ci sprawdza wielki problem. Powinno być na tym samym poziomie co słowo for z drugiej pętli, która powinna być na poziomie tego bin_list.append
W ogóle to jak chcesz dawać przykłady ludziom na wypoku, to użyj takiego https://repl.it/ albo chociaż pastebina.
liczba = bin(1231232)
nowa = format(14, liczba)
wywala się, albo coś źle wpisuje
bin_list = [num.zfill((len(num)+6)//7*7) for num in [bin(num)[2:] for num in numbers]]