Problem ze zmianą sting na int

Problem ze zmianą sting na int
SH
  • Rejestracja:ponad 4 lata
  • Ostatnio:27 dni
  • Lokalizacja:Łódź
  • Postów:73
0

Mam prosty kodzik który mnie po prostu załamał. Kod jest częścią większego programu. I po prostu utknąłem. Pewnie to błahostka ale mnie położyła na łopatki. Otóż:

Kopiuj
liczby = '15,45,34,17,19'
print(type(liczby))
lista=[liczby]

Potrzebuje z listy wyciągnąć pojedyncze liczby i przekształcić na int ( z tym sobie poradzę), ale jak wyciągnąć pojedynczą liczbę?

AK
Problem ze zmianą sting na TABLICĘ int
Patryk27
Moderator
  • Rejestracja:prawie 18 lat
  • Ostatnio:prawie 2 lata
  • Lokalizacja:Wrocław
  • Postów:13042
1

liczby[0], liczby[1] itd.


edytowany 1x, ostatnio: Patryk27
SH
Niestety liczby[0] daje wynik 15,45,34,17,19 -- ten ciąg znaków zapisany jest jako string i dlatego nie potrafię wyciągnąć pojedynczej cyfry
Patryk27
Ach, mój błąd - nie zauważyłem, że liczby to ciąg znaków.
JA
@slavoHeys: mała uwaga - liczba nie musi być cyfrą. Różnica taka jak między literką a wyrazem. Niby są wyrazy jednoliterowe, ale nie każdy wyraz musi być taki krótki jak litera.
stivens
  • Rejestracja:ponad 8 lat
  • Ostatnio:około 7 godzin
5

Niestety liczby[0] daje wynik 15,45,34,17,19 -- ten ciąg znaków zapisany jest jako string i dlatego nie potrafię wyciągnąć pojedynczej cyfry

.split(",")


λλλ
AK
liczby, bo chyba nie cyfry
SH
  • Rejestracja:ponad 4 lata
  • Ostatnio:27 dni
  • Lokalizacja:Łódź
  • Postów:73
0

@stivens: Jesteś Wielki, dziękuję za pomoc, nie wiem dlaczego sam na to nie wpadłem

Spearhead
  • Rejestracja:prawie 6 lat
  • Ostatnio:4 minuty
  • Postów:1002
1

Można też użyć:

Kopiuj
>>> import re
>>> re.findall('\d+', '15,45,34,17,19')
['15', '45', '34', '17', '19']

split() zwróci też puste stringi dla pary przecinków jak i stringi nie będące liczbami

Kopiuj
>>> re.findall('\d+', '22,33,,foo,bar')
['22', '33']
>>> '22,33,,foo,bar'.split(',')
['22', '33', '', 'foo', 'bar']
stivens
Ok ale input tak nie wyglada:)

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.