Last active 1733693664

GGORG revised this gist 1733693663. Go to revision

4 files changed, 211 insertions

adresy.txt(file created)

lem.txt(file created)

@@ -0,0 +1,8 @@
1 + Apentuła niewdziosek, te będy gruwaśne
2 + W koć turmiela weprząchnie, kostrą bajtę spoczy,
3 + Oproszędły znimęci, wyświrle uwzroczy,
4 + A korśliwe porsacze dogremnie wyczkaśnie!
5 + Trzy, samołóż wywiorstne, gręzacz tęci wzdyżmy,
6 + Apelajda sękliwa browajkę kuci.
7 + Greni małopoleśny te przezławskie tryżmy,
8 + Aż bamba się odmurczy i goła powróci.

praca_z_plikami_cz1.py(file created)

@@ -0,0 +1,129 @@
1 + # %%
2 + tekst = open('lem.txt', encoding='utf-8').readlines()
3 +
4 + # %%
5 + tekst
6 +
7 + # %%
8 + tekst = []
9 + for wiersz in open('lem.txt', encoding='utf-8'):
10 + tekst.append(wiersz)
11 +
12 + # %%
13 + tekst = [wiersz.strip() for wiersz in open('lem.txt', encoding='utf-8')]
14 + tekst
15 +
16 + # %%
17 + plik = open('lem.txt', 'a', encoding='utf-8')
18 + print('\n\nKazimierz Wielki wpadł do butelki', file=plik)
19 + plik.close()
20 +
21 + # %%
22 + with 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 + # %%
28 + with 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 + # %%
32 + with open('lem.txt', 'r', encoding='utf-8' ) as plik:
33 + wiersz = plik.readline().strip()
34 +
35 + print(wiersz)
36 + print(wiersz.split())
37 +
38 + # %%
39 + with open('adresy.txt', 'r', encoding='utf-8' ) as plik:
40 + tekst = plik.readlines()
41 +
42 + # usuń białe znaki
43 + tekst = [wiersz.strip() for wiersz in tekst]
44 +
45 + # usuń średniki
46 + metody = ('wycinek', 'replace')
47 + metoda = 'replace'
48 + if metoda == 'wycinek':
49 + tekst = [wiersz[:-1] for wiersz in tekst]
50 + elif metoda == 'replace':
51 + tekst = [wiersz.replace(';','') for wiersz in tekst]
52 +
53 +
54 +
55 + for 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 + # %%
62 + for 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 + # %%
67 + list(enumerate(tekst))
68 +
69 + # %%
70 + import os
71 + os.getcwd()
72 +
73 + # %%
74 + sciezka = r"C:\Users\Nauczyciel\VS programy"
75 + print(sciezka)
76 +
77 + # %%
78 + os.listdir()
79 +
80 + # %%
81 + os.path.isdir('.venv'), os.path.isfile('.venv'), os.path.isfile('adresy.txt'),
82 +
83 + # %%
84 + list(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 + # %%
99 + with 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 + # %%
105 + def relu(input):
106 + if input >= 0:
107 + return input
108 + else:
109 + return 0
110 +
111 + # %%
112 + def relu(input):
113 + if input >= 0:
114 + return input
115 + return 0
116 +
117 + # %%
118 + def relu(input):
119 +
120 + output = input if input >= 0 else 0
121 + return output
122 +
123 + # %%
124 + '------'.join(tekst)
125 +
126 + # %%
127 +
128 +
129 +

praca_z_plikami_cz2.py(file created)

@@ -0,0 +1,71 @@
1 + # %% [markdown]
2 + # ### Serializacja - pliki binarne
3 +
4 + # %%
5 + import pickle
6 + import numpy as np
7 +
8 + # %%
9 + tab = np.random.uniform(0,1, size=100)
10 + a, b = np.pi, np.exp(1)
11 + lista = ['Kawa', 'Czekolada', 'Dezodorant']
12 + slownik = {'a': '1x', 'b': '4d', 'c': '9a'}
13 +
14 + # %%
15 + plik = open('plik.dat', 'wb') # w - write; b - binary
16 + pickle.dump(tab, plik)
17 + pickle.dump(a, plik)
18 + pickle.dump(b, plik)
19 + pickle.dump(lista, plik)
20 + pickle.dump(slownik, plik)
21 + plik.close()
22 +
23 + # %%
24 + plik = open('plik.dat', 'rb') # r - read; b - binary
25 + tab_z_pliku = pickle.load(plik)
26 + a_z_pliku = pickle.load(plik)
27 + b_z_pliku = pickle.load(plik)
28 + lista_z_pliku = pickle.load(plik)
29 + slownik_z_pliku = pickle.load(plik)
30 + plik.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 + # %%
38 + slownik_z_pliku
39 +
40 + # %%
41 + exec('print(2+3)')
42 +
43 + # %%
44 + wiek = int(input('Podaj wiek: '))
45 +
46 + # %%
47 + wiek
48 +
49 + # %%
50 + wiek - 24
51 +
52 + # %%
53 + import json
54 +
55 + plik = open('plik.json', 'w')
56 +
57 + json.dump(slownik, plik)
58 +
59 + plik.close()
60 +
61 + # %%
62 + plik = open('plik.json', 'r')
63 +
64 + slownik_z_json = json.load(plik)
65 +
66 + plik.close()
67 +
68 + # %%
69 + slownik_z_json
70 +
71 +
Newer Older