PITCHME.md 4.43 KB
Newer Older
Bodor Máté's avatar
v0.03    
Bodor Máté committed
1
# Python 3 alapok
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
2
3
4
5
6

---

### Története

Bodor Máté's avatar
v0.01    
Bodor Máté committed
7
 - Guido van Rossum
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
8

Bodor Máté's avatar
v0.01    
Bodor Máté committed
9
 - 1991-ben jött létre
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
10

Bodor Máté's avatar
v0.01    
Bodor Máté committed
11
 - Magas szintű programozási nyelv
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
12

Bodor Máté's avatar
v0.03    
Bodor Máté committed
13
14
15
16
17
18
Note:
   - BDFL (Benevolent dictator for life)
   - Monty Python, karácsony
   - könnyen olvasható, tanulható, gyors fejlesztés
   - lassú

Bodor Máté's avatar
v0.01    
Bodor Máté committed
19
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
20
21
22

### Interpretált

Bodor Máté's avatar
v0.03    
Bodor Máté committed
23
24
25
 - A kódot egy értelmező dolgozza fel
 - Nem kell fordítani
 - Platformfüggetlen
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
26

Bodor Máté's avatar
v0.03    
Bodor Máté committed
27
Note:
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
28

Bodor Máté's avatar
v0.03    
Bodor Máté committed
29
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
30

Bodor Máté's avatar
v0.03    
Bodor Máté committed
31
### Miért szeretjük a python?
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
32

Bodor Máté's avatar
v0.03    
Bodor Máté committed
33
34
35
Note:
   - Magasszintű:
      -  Könnyen tanulható, gyors fejlesztés
Bodor Máté's avatar
v0.04    
Bodor Máté committed
36
37
   - Interpretált:
      - Bárhol lefut, nem kell lefordítani
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
38

Bodor Máté's avatar
v0.03    
Bodor Máté committed
39
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
40

Bodor Máté's avatar
v0.04    
Bodor Máté committed
41
KÉP: https://cdn-images-1.medium.com/max/800/0*_e09A-2xg4x7PG_A.
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
42

Bodor Máté's avatar
v0.04    
Bodor Máté committed
43
44
45
---
### Csomagok

Bodor Máté's avatar
v0.06    
Bodor Máté committed
46
47
48
49
- Webfejlesztés:
    - Django
    - Flusk
    - Requests
Bodor Máté's avatar
v0.05    
Bodor Máté committed
50
51
52

+++

Bodor Máté's avatar
v0.06    
Bodor Máté committed
53
54
55
- IT Security:
    - Scapy
    - Nmap
Bodor Máté's avatar
v0.05    
Bodor Máté committed
56
57
58

+++

Bodor Máté's avatar
v0.06    
Bodor Máté committed
59
60
61
- AI:
    - TensorFlow
    - Keras
Bodor Máté's avatar
v0.05    
Bodor Máté committed
62
63
64

+++

Bodor Máté's avatar
v0.06    
Bodor Máté committed
65
66
67
68
- Data Science:
    - Pandas
    - StatsModels
    - NumPy
Bodor Máté's avatar
v0.05    
Bodor Máté committed
69
70
71

+++

Bodor Máté's avatar
v0.06    
Bodor Máté committed
72
73
74
75
- GUI:
    - PyQt
    - Tkinter
    - Flexx
Bodor Máté's avatar
v0.04    
Bodor Máté committed
76
 
Bodor Máté's avatar
v0.05    
Bodor Máté committed
77
+++
Bodor Máté's avatar
v0.06    
Bodor Máté committed
78
79
80
81
- Data visualization
    - matplotlib
    - Plotly
    - geoplotlib
Bodor Máté's avatar
v0.03    
Bodor Máté committed
82
Note:
Bodor Máté's avatar
v0.04    
Bodor Máté committed
83
   
Bodor Máté's avatar
v0.01    
Bodor Máté committed
84
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
85
86
87

### Hátrányok

Bodor Máté's avatar
v0.01    
Bodor Máté committed
88
 - Lassabb, mint egy lefordított program
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
89

Bodor Máté's avatar
v0.04    
Bodor Máté committed
90
91
Note:

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
92
93
94
95
96
97
98
99
---

### Pip

```
pip install colorama
```

Bodor Máté's avatar
v0.01    
Bodor Máté committed
100
 - csomagkezelő
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
101

Bodor Máté's avatar
v0.01    
Bodor Máté committed
102
  - egy helyen van minden
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
103

Bodor Máté's avatar
v0.01    
Bodor Máté committed
104
  - könnyen használható
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
105

Bodor Máté's avatar
v0.01    
Bodor Máté committed
106
  - globálisan felrakhatók a csomagok
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
107
108
109
110
111
112

Note:

- könnyen használható
  - C++ ban jóval nehezebb

Bodor Máté's avatar
v0.01    
Bodor Máté committed
113
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
114
115
116

### Virtualenv

Bodor Máté's avatar
v0.01    
Bodor Máté committed
117
 - saját környezet minden projekthez(dependecy)
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
118

Bodor Máté's avatar
v0.01    
Bodor Máté committed
119
 - pipenv
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
120
121
122
123
124
125
126
127
128

---

### Hello World!

```python
print("Hello World!")
```

Bodor Máté's avatar
v0.01    
Bodor Máté committed
129
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
130
131
132
133
134
135
136
137
138
139
140
141
142

```python
from colorama import init
from colorama import Fore, Back, Style

init()
print(Fore.RED + 'some red text')
print(Back.GREEN + 'and with a green background')
print(Style.DIM + 'and in dim text')
print(Style.RESET_ALL)
print('back to normal now')
```

143
144
---

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
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
200
201
202
203
204
205
### Szintaxis

```python
#!/usr/bin/python3

import sys

try:
   # open file stream
   file = open(file_name, "w")

except IOError:
   print ("There was an error writing to", file_name)
   sys.exit()
print ("Enter '", file_finish,)
print "' When finished"

while file_text != file_finish:
   file_text = raw_input("Enter text: ")
   
   if file_text == file_finish:
      # close the file
	  file.close
      break
   file.write(file_text)
   file.write("\n")
file.close()
file_name = input("Enter filename: ")

if len(file_name) == 0:
   print ("Next time please enter something")
   sys.exit()

try:
   file = open(file_name, "r")

except IOError:
   print ("There was an error reading file")
   sys.exit()
file_text = file.read()
file.close()
print (file_text)
```

Note:

- Nincs sorvég jel
- A kód blokkok indentálva vannak nincs kapcsoszárójel
- komment #

---

### Változók

- integer
- float
- string
- list
- tuple
- dictionary

Bodor Máté's avatar
v0.01    
Bodor Máté committed
206
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
207
208
209
210

### List

```python
211
myList = ['physics', 'chemistry', 'physics', 1997, 2000]
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
212
213
214
215
```

bármilyen típus lehet benne

216
módosítható(mutable)
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
217

Bodor Máté's avatar
v0.01    
Bodor Máté committed
218
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
219
220

```python
221
222
print ("myList[0]: ", myList[0])
print ("myList[1:5]: ", myList[1:5])
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
223
224
225
```

```python
226
227
myList.append(5)
del myList[2]
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
228
229
```

Bodor Máté's avatar
v0.01    
Bodor Máté committed
230
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248

### Tuple

Ugyanaz, mint egy lista

Nem módosítható(immutable)

```python
tup1 = (12, 34.56)
tup2 = ('abc', 'xyz')
```

```python
# tup1[0] = 100;
tup3 = tup1 + tup2
print (tup3)
```

Bodor Máté's avatar
v0.01    
Bodor Máté committed
249
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284

### Dictionary

Kulcs érték pár

A kulcs egyedi, érték bármi lehet

```python
dict = {'Name': 'Zara', 'Age': 7, 'Class': 'First'}
```

```python
print ("dict['Name']: ", dict['Name'])
dict['Age'] = 8
del dict['Name']
```

---

### Alap beépített fgv-ek

int

hex

oct

str

len

list

range

Bodor Máté's avatar
v0.01    
Bodor Máté committed
285
---
286

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
287
### Ciklusok
Bodor Máté's avatar
v0.01    
Bodor Máté committed
288
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
#### While

```python
count = 0
while (count < 9):
   print ('The count is:', count)
   count = count + 1
```

```python
>>> range(5)
range(0, 5)
>>> list(range(5))
[0, 1, 2, 3, 4]
```

Bodor Máté's avatar
v0.01    
Bodor Máté committed
305
---
306

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
#### For

```python
for var in range(5):
   print (var)
```

```python
for letter in 'Python':     # traversal of a string sequence
   print ('Current Letter :', letter)
print()
fruits = ['banana', 'apple',  'mango']

for fruit in fruits:        # traversal of List sequence
   print ('Current fruit :', fruit)
```

Bodor Máté's avatar
v0.01    
Bodor Máté committed
324
325
---

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
### Elágazás

```python
if expression1:
   statement(s)
elif expression2:
   statement(s)
elif expression3:
   statement(s)
else:
   statement(s)
```

---

### Osztályok

```python
class Employee:
   'Common base class for all employees'
   empCount = 0

   def __init__(self, name, salary):
      self.name = name
      self.salary = salary
      Employee.empCount += 1
   
   def displayCount(self):
     print ("Total Employee %d" % Employee.empCount)

   def displayEmployee(self):
      print ("Name : ", self.name,  ", Salary: ", self.salary)
```

Bodor Máté's avatar
v0.01    
Bodor Máté committed
360
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
361
362

### Getter, Setter