• Register

Izpis števila, ki vsebuje določeno števko.

+2 votes
62 views

Pozdravljeni,

sprva sem določil seznam števil, sedaj pa bi želel izpisati le tista števila, ki vsebujejo izbrano števko.  

Naprimer:

seznam = list(range(20 ,100 ,4))

Ali bi šlo nekako z for zanko. Npr:

for element in seznam:
    if 2 in element:   #ta del je problem
        print(element)

 

 

Hvala za odgovor 

Urh

   

 
asked Oct 8 by urhštempiharjazbec (260 points)

3 Answers

+1 vote

To boste najlažje storili, če števila, ki jih primerjate, pretvorite v nize (str()). Nize si lahko predstavljate podobno kot sezname (ali še bolje, terke) znakov, in so zato so zelo primerna oblika podatkov, kadar vas zanimajo "znaki", ki sestavljajo določeno vrednost, številko itd.

V vašem primeru bi lahko to storili takole:

seznam = range(20 ,100 ,4)
for element in seznam:
    if '2' in str(element):
        print(element)

Rezultat je:

20
24
28
32
52
72
92
answered Oct 9 by dgorjup (66,450 points)
+1 vote
seznam = list(range(20, 100, 4))
for element in seznam:
    a = element
    while a != 0:
        if a % 10 == 2:
            print(element)
        a = a // 10

Po tej metodi pac rabiš eno zanko da gres skozi seznam, znotraj pa se drugo, s katero seciras stevilo.
answered Oct 9 by mitjaderg (630 points)
+1 vote
seznam = list(range(20, 100, 4))
print(seznam)
for element in seznam:
    a = element
    while a != 0:
        if a % 10 == 2:
            print(element)
        a = a // 10

Verjamem, da ni najlepša rešitev. A kdo ve, ali se da integrarje pretvorit v stringe?​
answered Oct 9 by mitjaderg (630 points)
...