PITCHME.md 4.28 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
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
---
### Csomagok

 - Webfejlesztés:
   - Django
   - Flusk
   - Requests
 - IT Security:
   - Scapy
   - Nmap
 - AI:
  - TensorFlow
  - Keras
 - Data Science:
   - Pandas
 - GUI:
   - PyQt
 
Bodor Máté's avatar
v0.03    
Bodor Máté committed
61
62

Note:
Bodor Máté's avatar
v0.04    
Bodor Máté committed
63
   
Bodor Máté's avatar
v0.01    
Bodor Máté committed
64
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
65
66
67

### Hátrányok

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

Bodor Máté's avatar
v0.04    
Bodor Máté committed
70
71
Note:

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
72
73
74
75
76
77
78
79
---

### Pip

```
pip install colorama
```

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

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

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

Bodor Máté's avatar
v0.01    
Bodor Máté committed
86
  - globálisan felrakhatók a csomagok
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
87
88
89
90
91
92

Note:

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

Bodor Máté's avatar
v0.01    
Bodor Máté committed
93
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
94
95
96

### Virtualenv

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

Bodor Máté's avatar
v0.01    
Bodor Máté committed
99
 - pipenv
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
100
101
102
103
104
105
106
107
108

---

### Hello World!

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

Bodor Máté's avatar
v0.01    
Bodor Máté committed
109
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
110
111
112
113
114
115
116
117
118
119
120
121
122

```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')
```

123
124
---

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
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
### 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
186
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
187
188
189
190

### List

```python
191
myList = ['physics', 'chemistry', 'physics', 1997, 2000]
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
192
193
194
195
```

bármilyen típus lehet benne

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

Bodor Máté's avatar
v0.01    
Bodor Máté committed
198
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
199
200

```python
201
202
print ("myList[0]: ", myList[0])
print ("myList[1:5]: ", myList[1:5])
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
203
204
205
```

```python
206
207
myList.append(5)
del myList[2]
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
208
209
```

Bodor Máté's avatar
v0.01    
Bodor Máté committed
210
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228

### 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
229
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264

### 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
265
---
266

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
267
### Ciklusok
Bodor Máté's avatar
v0.01    
Bodor Máté committed
268
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
#### 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
285
---
286

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
#### 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
304
305
---

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
### 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
340
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
341
342

### Getter, Setter