PITCHME.md 4.12 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.01    
Bodor Máté committed
33
 - Végtelen package
Bodor Máté's avatar
v0.03    
Bodor Máté committed
34
35
36
37
   - 
Note:
   - Magasszintű:
      -  Könnyen tanulható, gyors fejlesztés
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.03    
Bodor Máté committed
41
### Miért szeretjük a python?
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
42

Bodor Máté's avatar
v0.03    
Bodor Máté committed
43
44
45
46
47
 - 

Note:
   - Interpretált:
      - Bárhol lefut, nem kell lefordítani
Bodor Máté's avatar
v0.01    
Bodor Máté committed
48
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
49
50
51

### Hátrányok

Bodor Máté's avatar
v0.01    
Bodor Máté committed
52
 - Csak runtime error
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
53

Bodor Máté's avatar
v0.01    
Bodor Máté committed
54
 - Dinamikus változok
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
55

Bodor Máté's avatar
v0.01    
Bodor Máté committed
56
 - Lassabb, mint egy lefordított program
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
57
58
59
60
61
62
63
64
65

---

### Pip

```
pip install colorama
```

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

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

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

Bodor Máté's avatar
v0.01    
Bodor Máté committed
72
  - globálisan felrakhatók a csomagok
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
73
74
75
76
77
78

Note:

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

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

### Virtualenv

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

Bodor Máté's avatar
v0.01    
Bodor Máté committed
85
 - pipenv
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
86
87
88
89
90
91
92
93
94

---

### Hello World!

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

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

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

109
110
---

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
111
112
113
114
115
116
117
118
119
120
121
122
123
124
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
### 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
172
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
173
174
175
176

### List

```python
177
myList = ['physics', 'chemistry', 'physics', 1997, 2000]
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
178
179
180
181
```

bármilyen típus lehet benne

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

Bodor Máté's avatar
v0.01    
Bodor Máté committed
184
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
185
186

```python
187
188
print ("myList[0]: ", myList[0])
print ("myList[1:5]: ", myList[1:5])
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
189
190
191
```

```python
192
193
myList.append(5)
del myList[2]
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
194
195
```

Bodor Máté's avatar
v0.01    
Bodor Máté committed
196
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214

### 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
215
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250

### 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
251
---
252

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
253
### Ciklusok
Bodor Máté's avatar
v0.01    
Bodor Máté committed
254
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
#### 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
271
---
272

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
#### 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
290
291
---

Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
### 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
326
---
Bodnár Zsombor's avatar
WIP    
Bodnár Zsombor committed
327
328

### Getter, Setter