Last active 1733693664

lem.txt Raw
1 Apentuła niewdziosek, te będy gruwaśne
2W koć turmiela weprząchnie, kostrą bajtę spoczy,
3Oproszędły znimęci, wyświrle uwzroczy,
4A korśliwe porsacze dogremnie wyczkaśnie!
5Trzy, samołóż wywiorstne, gręzacz tęci wzdyżmy,
6Apelajda sękliwa browajkę kuci.
7Greni małopoleśny te przezławskie tryżmy,
8Aż bamba się odmurczy i goła powróci.
praca_z_plikami_cz1.py Raw
1# %%
2tekst = open('lem.txt', encoding='utf-8').readlines()
3
4# %%
5tekst
6
7# %%
8tekst = []
9for wiersz in open('lem.txt', encoding='utf-8'):
10 tekst.append(wiersz)
11
12# %%
13tekst = [wiersz.strip() for wiersz in open('lem.txt', encoding='utf-8')]
14tekst
15
16# %%
17plik = open('lem.txt', 'a', encoding='utf-8')
18print('\n\nKazimierz Wielki wpadł do butelki', file=plik)
19plik.close()
20
21# %%
22with open('lem.txt', 'a', encoding='utf-8') as plik:
23 print('\n\n\n', file=plik)
24 for _ in range(100):
25 print('\nKazimierz Wielki wpadł do butelki', file=plik)
26
27# %%
28with open('lem.txt', mode='a', encoding='utf-8') as plik:
29 plik.writelines(['Wanda, co nie chciała Niemca\n', 'Ale wolała Włocha'])
30
31# %%
32with open('lem.txt', 'r', encoding='utf-8' ) as plik:
33 wiersz = plik.readline().strip()
34
35print(wiersz)
36print(wiersz.split())
37
38# %%
39with open('adresy.txt', 'r', encoding='utf-8' ) as plik:
40 tekst = plik.readlines()
41
42# usuń białe znaki
43tekst = [wiersz.strip() for wiersz in tekst]
44
45# usuń średniki
46metody = ('wycinek', 'replace')
47metoda = 'replace'
48if metoda == 'wycinek':
49 tekst = [wiersz[:-1] for wiersz in tekst]
50elif metoda == 'replace':
51 tekst = [wiersz.replace(';','') for wiersz in tekst]
52
53
54
55for i, mail in enumerate(tekst):
56 prefiks, skrzynka = mail.split('@')
57 print(f'Osoba numer {i+1} ma prefiks {prefiks} na skrzynce {skrzynka}')
58
59
60
61# %%
62for i in range(len(tekst)):
63 prefiks, skrzynka = tekst[i].split('@')
64 print(f'Osoba numer {i+1} ma prefiks {prefiks} na skrzynce {skrzynka}')
65
66# %%
67list(enumerate(tekst))
68
69# %%
70import os
71os.getcwd()
72
73# %%
74sciezka = r"C:\Users\Nauczyciel\VS programy"
75print(sciezka)
76
77# %%
78os.listdir()
79
80# %%
81os.path.isdir('.venv'), os.path.isfile('.venv'), os.path.isfile('adresy.txt'),
82
83# %%
84list(os.scandir())
85
86# %% [markdown]
87# ### `with` - *menedżer kontekstu*
88# #### Dlaczego `with` w tym miejscu, skoro nie ma z tego korzyści dla komputera?
89#
90# Bo <font color="green"> **kod źródłowy jest dla człowieka, nie dla komputera** </font>
91#
92# Dla człowieka takie użycie `with` jest podprogowym przekazem: wszystko co jest do zrobienia z katalogami ma być w obrębie tego fragmentu kodu, a nie gdzieś poza nim.
93#
94# Dobrą praktyką jest pisanie <font color="green"> *kodów samokomentujących się* </font>.
95#
96# Komentarze w kodzie mile widziane są tylko w książkach i artykułach demonstrujących użycie kodu, nie w prawdziwych projektach.
97
98# %%
99with os.scandir() as zawartosc_folder:
100 for elem in zawartosc_folder:
101 print(f'Katalog: {elem.name}') if elem.is_dir() else print(f'Plik: {elem.name}')
102
103
104# %%
105def relu(input):
106 if input >= 0:
107 return input
108 else:
109 return 0
110
111# %%
112def relu(input):
113 if input >= 0:
114 return input
115 return 0
116
117# %%
118def relu(input):
119
120 output = input if input >= 0 else 0
121 return output
122
123# %%
124'------'.join(tekst)
125
126# %%
127
128
129
130
praca_z_plikami_cz2.py Raw
1# %% [markdown]
2# ### Serializacja - pliki binarne
3
4# %%
5import pickle
6import numpy as np
7
8# %%
9tab = np.random.uniform(0,1, size=100)
10a, b = np.pi, np.exp(1)
11lista = ['Kawa', 'Czekolada', 'Dezodorant']
12slownik = {'a': '1x', 'b': '4d', 'c': '9a'}
13
14# %%
15plik = open('plik.dat', 'wb') # w - write; b - binary
16pickle.dump(tab, plik)
17pickle.dump(a, plik)
18pickle.dump(b, plik)
19pickle.dump(lista, plik)
20pickle.dump(slownik, plik)
21plik.close()
22
23# %%
24plik = open('plik.dat', 'rb') # r - read; b - binary
25tab_z_pliku = pickle.load(plik)
26a_z_pliku = pickle.load(plik)
27b_z_pliku = pickle.load(plik)
28lista_z_pliku = pickle.load(plik)
29slownik_z_pliku = pickle.load(plik)
30plik.close()
31
32# %% [markdown]
33# ## W domu
34#
35# Napisz program, który zrobi to samo co wyżej, ale z użyciem pętli `for`, aby uniknąć "przeklejania kodu"
36
37# %%
38slownik_z_pliku
39
40# %%
41exec('print(2+3)')
42
43# %%
44wiek = int(input('Podaj wiek: '))
45
46# %%
47wiek
48
49# %%
50wiek - 24
51
52# %%
53import json
54
55plik = open('plik.json', 'w')
56
57json.dump(slownik, plik)
58
59plik.close()
60
61# %%
62plik = open('plik.json', 'r')
63
64slownik_z_json = json.load(plik)
65
66plik.close()
67
68# %%
69slownik_z_json
70
71
72