• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Pętla for w pythonie

Object Storage Arubacloud
0 głosów
566 wizyt
pytanie zadane 10 lutego 2018 w Python przez ayo1001 Obywatel (1,890 p.)
edycja 10 lutego 2018 przez ayo1001

Cześć,

Mam takie dane:

abc:

70378950
67373421
74527486
63849844
95731879
67385216

i kod:

print(abc)
for s in str(abc):
    print('To jest:' + s) 

Z niewiadomych mi przyczyn dostaje taki rezultat:

70378950
To jest: 7
To jest: 0
To jest: 3
To jest: 7
To jest: 8
To jest: 9
To jest: 5
To jest: 0
67373421
To jest: 6
To jest: 7
itd.

Jak uzyskać wynik:

To jest: 70378950
To jest: 67373421
...

 

komentarz 10 lutego 2018 przez mokrowski Mędrzec (155,460 p.)
A te abc to jest nazwa pliku czy inna struktura?
komentarz 10 lutego 2018 przez ayo1001 Obywatel (1,890 p.)
Wynik parsowania.
komentarz 10 lutego 2018 przez mokrowski Mędrzec (155,460 p.)
Gdzie lub w czym jest to abc. To jest string, lista, plik...?

W czym trzymasz ten "wynik parsowania"?
komentarz 10 lutego 2018 przez ayo1001 Obywatel (1,890 p.)
W niczym nie jest trzymana. Jest to zwykły output po parsowaniu, do którego muszę dodać wartość "przed" i "po" i wyświetlić w pętli.
komentarz 10 lutego 2018 przez mokrowski Mędrzec (155,460 p.)
Pokaż jak uzyskujesz ten "output z parsowania". Jak widzisz pyta o to już 2 osoba a inne spekulują...
komentarz 10 lutego 2018 przez ayo1001 Obywatel (1,890 p.)
with urllib.request.urlopen(link) as url: data = json.loads(url.read().decode())

number = 0
while number < 100:
    number += 1
    abc = (data['liczba']])
    print(abc)
    for s in str(abc):
        print('To jest:' + s)
70378950
To jest: 7
To jest: 0
To jest: 3
To jest: 7
To jest: 8
To jest: 9
To jest: 5
To jest: 0
67373421
To jest: 6
To jest: 7

 

1
komentarz 10 lutego 2018 przez mokrowski Mędrzec (155,460 p.)
print('To jest:' + abc)

Bez sekcji for.

komentarz 10 lutego 2018 przez ayo1001 Obywatel (1,890 p.)
Działa... Dzięki. Czasami człowiek się przytnie na głupocie.

2 odpowiedzi

+1 głos
odpowiedź 10 lutego 2018 przez mokrowski Mędrzec (155,460 p.)
#!/usr/bin/env python3

data = """70378950
67373421
74527486
63849844
95731879
67385216"""

print('Nagłówek')
for line in data.split('\n'):
    print('To jest: ' + line)
print('Stopka')

 

komentarz 10 lutego 2018 przez adrian17 Ekspert (344,860 p.)
(albo data.splitlines() )
komentarz 10 lutego 2018 przez mokrowski Mędrzec (155,460 p.)
Jakkolwiek... moją cierpliwość już wyczerpał...
0 głosów
odpowiedź 10 lutego 2018 przez Tpk Nałogowiec (40,100 p.)
Konwertujesz wszystko na końcu do str, więc dlatego otrzymujesz coś takiego.

abc nw czy to jest tablica (czy co) ale żeby zrobić coś takiego co chcesz zrobić potrzebowałbyś te numery zamknąć właśnie w jakiejś tablicy.
komentarz 10 lutego 2018 przez ayo1001 Obywatel (1,890 p.)
Niestety bez str mam rezultat: 'int' object is not iterable
komentarz 10 lutego 2018 przez Tpk Nałogowiec (40,100 p.)
abc = ["70378950","67373421","74527486","63849844","95731879","67385216"]

for s in abc:
    print('To jest:' + s)

 

Tak bym to zrobił, lub inaczej:

abc = [70378950,67373421,74527486,63849844,95731879,67385216]

for s in abc:
    print('To jest: %s' % str(s))

 

komentarz 10 lutego 2018 przez ayo1001 Obywatel (1,890 p.)

No tak. Tylko jak z postaci:

70378950
67373421
74527486
63849844
95731879
67385216

Uzyskać:

abc = [70378950,67373421,74527486,63849844,95731879,67385216]

 

komentarz 11 lutego 2018 przez Tpk Nałogowiec (40,100 p.)
edycja 11 lutego 2018 przez Tpk

Jeżeli te cyfry to jeden ciąg znaków to:

abc = "703789506737342174527486638498449573187967385216"

lengo = len(abc)
abc2 = []

for x in range(0,lengo,8):
    n = int(abc[x:x+8])
    abc2.append(n)

# Efekt koncowy

for s in abc2:
     print('To jest: %s' % str(s))

Natomiast jeżeli to ciąg liczb ze znakami białymi no to splice, tak jak kolega wyżej.

Podobne pytania

0 głosów
2 odpowiedzi 212 wizyt
pytanie zadane 7 października 2020 w Python przez Dawid Popławski Nowicjusz (160 p.)
0 głosów
3 odpowiedzi 1,808 wizyt
pytanie zadane 24 lutego 2018 w Python przez jasmen11 Nowicjusz (240 p.)
+1 głos
1 odpowiedź 180 wizyt
pytanie zadane 17 marca 2020 w Python przez wojtek_suchy Mądrala (6,880 p.)

92,565 zapytań

141,416 odpowiedzi

319,597 komentarzy

61,948 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...