Přeskočit na obsah

Python/Kenjiro995/Cyklus for

Z Wikiverzity

Cyklus for využíváme, pokud dopředu víme, kolik opakování bude cyklus mít. V ostatních případech využíváme cyklus while (což je cyklus s podmínkou).

Základní příklady

[editovat]

Příklad 1.

[editovat]
for i in 1, 2, 3, 4, 5:
  print(i)

Výstup:

1
2
3
4
5


for i in 1, 2, 3, 4, 5:
  print("Python")

Výstup:

Python
Python
Python
Python
Python


for i in "a", "b", "c", "d", "e":
  print(i)

Výstup:

a
b
c
d
e

Příklad 2.

[editovat]
for i in 1, 1, 1, 1, 1:
  print(i)

Výstup:

1
1
1
1
1


for i in 1, 1, 1, 1, 1:
  print("Python")

Výstup:

Python
Python
Python
Python
Python


for i in "a", "a", "a", "a", "a":
  print(i)

Výstup:

a
a
a
a
a

Příklad 3.

[editovat]
for i in [1, 2, 3, 4, 5]:
  print(i)

Výstup:

1
2
3
4
5


for i in ["a", "b", "c", "d", "e"]:
  print(i)

Výstup:

a
b
c
d
e


seznam = ["Petr", "Pavel", "Klára", "Lenka"]
for i in seznam:
  print(i)

Výstup:

Petr
Pavel
Klára
Lenka

Příklad 4.

[editovat]
for i in range(5):
  print(i)

Výstup:

0
1
2
3
4


for i in range(1,5):
  print(i)

Výstup:

1
2
3
4


for i in range(0,10,2):
  print(i)

Výstup:

0
2
4
6
8


for i in range(10, 0, -1):
  print(i)

Výstup:

10
9
8
7
6
5
4
3
2
1

Příklad 5.

[editovat]
for i in "Python":
  print(i)

Výstup:

P
y
t
h
o
n


for i in "Python":
  print(i*20)

Výstup:

PPPPPPPPPPPPPPPPPPPP
yyyyyyyyyyyyyyyyyyyy
tttttttttttttttttttt
hhhhhhhhhhhhhhhhhhhh
oooooooooooooooooooo
nnnnnnnnnnnnnnnnnnnn


Příklad 6.

[editovat]
for x in 5, 7, 11, 13, 23:
  x2 = x ** 2
  print('druhá mocnina', x, 'je', x2)

Výstup:

druhá mocnina 5 je 25
druhá mocnina 7 je 49
druhá mocnina 11 je 121
druhá mocnina 13 je 169
druhá mocnina 23 je 529


for x in 22/7, 3, 14, 8., 1000-1e-3:
  print('druha odmocnina z', x, 'je', x ** .5)

Výstup:

druha odmocnina z 3.142857142857143 je 1.7728105208558367
druha odmocnina z 3 je 1.7320508075688772
druha odmocnina z 14 je 3.7416573867739413
druha odmocnina z 8.0 je 2.8284271247461903
druha odmocnina z 999.999 je 31.62276079029154


for cislo in range(100,200):
  print(cislo, end=', ')

Výstup:

100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129, 130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142, 143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155, 156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168, 169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181, 182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194, 195, 196, 197, 198, 199,


for i in range(1,11):
  print(i, i * i, i ** 3, i ** 4)

Výstup:

1 1 1 1
2 4 8 16
3 9 27 81
4 16 64 256
5 25 125 625
6 36 216 1296
7 49 343 2401
8 64 512 4096
9 81 729 6561
10 100 1000 10000


for i in range(1,11):
  print('{:3} {:4} {:5} {:6}'.format(i, i * i, i ** 3, i ** 4))

Výstup:

 1    1     1      1
 2    4     8     16
 3    9    27     81
 4   16    64    256
 5   25   125    625
 6   36   216   1296
 7   49   343   2401
 8   64   512   4096
 9   81   729   6561
10  100  1000  10000

Ukázky použití

[editovat]

Césarova šifra

[editovat]
# Césarova šifra
text = "Praha město stověžaté"
key = 5
y = ""
b = ""

# šifrování
for x in text:
    y = y + (chr(ord(x)+key))
print("nezašifrovaný text:", text)
print("zašifrovaný text:", y)
print("*********************")

# dešifrování
for a in y:
    b = b + (chr(ord(a)-key))
print("dešifrovaný text:",b)
print("*********************")

Výstup:

nezašifrovaný text: Praha město stověžaté
zašifrovaný text: Uwfmf%rĠxyt%xyt{Ġƃfyî
*********************
dešifrovaný text: Praha město stověžaté
*********************

Další příklad zašifrování:

y = ""
x = ""
a = ""
abeceda = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"
text = "Praha mesto moje. Zavitě vyli 4 vlci. 567890="
key = 5
p = 0
c = 0

for x in text:
    i = 0
    if x in abeceda:            # podmínka je splněna pouze, pokud je znak v proměnné x, v proměnné abeceda
        c = abeceda.find(x)     # najde pozici písmena v proměnné x, v proměnné abeceda
        p = (c + key) % len(abeceda)             # vypočítá posun p, která se rovná pozice c posunutý o klíč key
        y = y + abeceda[p]
    else:
        y = y + x               # pokud není znak součástí abecedy zařadí se do šifrovaného textu bezezměny
print("nezašifrovaný text2:",text)
print("zašifrovaný text2:",y)

Výstup:

nezašifrovaný text2: Praha mesto moje. Zavitě vyli 4 vlci. 567890=
zašifrovaný text2: Uwfmf rjxyt rtoj. 5fAnyě ADqn 9 Aqhn. 0abcde=