Commit 24fb6fa7 authored by cermak's avatar cermak
Browse files

Lesson 11 reseni

parent 1ad52a66
Pipeline #24324 passed with stage
in 1 minute and 38 seconds
Lorem ipsum dolor sit amet, consectetur adipiscing elit.
Aenean mollis fermentum eros id posuere.
Integer pharetra neque 12 ac 45 aliquam egestas.
Nullam pulvinar mauris at diam faucibus venenatis.
Suspendisse cursus ipsum sit amet massa mattis, ut tempor tortor rutrum.
Suspendisse at interdum 39 18 2 orci.
Maecenas aliquam dapibus nisi, sit amet hendrerit purus feugiat sed.
Phasellus vehicula sem id interdum blandit.
Donec aliquet nulla luctus, elementum magna vel, molestie mi.
1 2 3 4 5 6 7 8 9 10
\ No newline at end of file
# %%
# Spočítejte, kolik je v souboru řádků, slov a viditelných znaků (tedy bez mezer a konců řádků)
with open("lipsum.txt", encoding="utf-8") as f:
radku = slov = znaku = 0
for line in f:
radku += 1
for s in line.split():
slov += 1
znaku += len(s)
print(f"Soubor má {radku} řádků, {slov} slov a {znaku} tisknutelných znaků.")
# %%
# Zkopíruje soubor do jiného souboru, aby řádky šly v opačném pořadí
# 1) hloupý postup, který načte původní soubor do paměti
with open("lipsum.txt", encoding="utf-8") as f:
lines = f.readlines()
with open("lipsum-back.txt", mode="w", encoding="utf-8") as f:
for line in reversed(lines):
# %%
# 2) chytrý postup, který čte soubor odzadu, využívá externí knihovnu
# to samé by si šlo naprogramovat pomocí seeku, ale proč když už to někdo udělal.reversed
from file_read_backwards import FileReadBackwards
with FileReadBackwards("lipsum.txt", encoding="utf-8") as frb:
with open("lipsum-back.txt", mode="w", encoding="utf-8") as f:
for line in frb:
f.write(line + "\n")
# %%
# Najděte na každém řádku všechna čísla (oddělená mezerami) a vypíše jejich součet; slova, která nejsou čísly, ignoruje.
def safe_int(s):
try:
return int(s)
except ValueError:
return 0
with open("lipsum.txt", encoding="utf-8") as f:
for line in f:
print(sum(map(safe_int, line.split())))
seats = []
while True:
row = list(map(int, input().split()))
if row[0] == -1:
break
seats.append(row)
print(all(sorted(set(row)) == list(row) for row in zip(*seats)))
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment