Програмиране с python 2012, лекция 0
TRANSCRIPT
![Page 1: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/1.jpg)
Tuesday, March 6, 12
![Page 2: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/2.jpg)
0. Програмиране с Python
Алек АндреевНиколай БачийскиКирил ВладимировЙоан Карадимов
Tuesday, March 6, 12
![Page 3: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/3.jpg)
Tuesday, March 6, 12
![Page 4: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/4.jpg)
План
Tuesday, March 6, 12
![Page 5: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/5.jpg)
ПланЗа курса
Tuesday, March 6, 12
![Page 6: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/6.jpg)
ПланЗа курса
Цели на курса
Tuesday, March 6, 12
![Page 7: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/7.jpg)
ПланЗа курса
Цели на курсаОрганизационни
Tuesday, March 6, 12
![Page 8: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/8.jpg)
ПланЗа курса
Цели на курсаОрганизационниЕзикът Python
Tuesday, March 6, 12
![Page 9: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/9.jpg)
ПланЗа курса
Цели на курсаОрганизационниЕзикът PythonЗащо Python?
Tuesday, March 6, 12
![Page 10: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/10.jpg)
План
Tuesday, March 6, 12
![Page 11: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/11.jpg)
21 фев. - ???23 фев. - Python за 1 ден28 фев. - “входен” тест
Tuesday, March 6, 12
![Page 12: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/12.jpg)
За курса
Tuesday, March 6, 12
![Page 13: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/13.jpg)
Tuesday, March 6, 12
![Page 14: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/14.jpg)
http://www.flickr.com/photos/martin_heigan/4086843060/
Tuesday, March 6, 12
![Page 15: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/15.jpg)
Tuesday, March 6, 12
![Page 16: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/16.jpg)
Tuesday, March 6, 12
![Page 17: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/17.jpg)
Tuesday, March 6, 12
![Page 18: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/18.jpg)
Цели на курса
Tuesday, March 6, 12
![Page 19: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/19.jpg)
Tuesday, March 6, 12
![Page 20: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/20.jpg)
1 2 3
Tuesday, March 6, 12
![Page 21: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/21.jpg)
1 Друга гледна точка
Tuesday, March 6, 12
![Page 22: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/22.jpg)
Tuesday, March 6, 12
![Page 23: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/23.jpg)
Tuesday, March 6, 12
![Page 24: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/24.jpg)
Tuesday, March 6, 12
![Page 25: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/25.jpg)
Tuesday, March 6, 12
![Page 26: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/26.jpg)
Какво можем да направим с един динамичен език
Tuesday, March 6, 12
![Page 27: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/27.jpg)
Функционалния стил в живия живот
Tuesday, March 6, 12
![Page 28: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/28.jpg)
Итератори и генератори
Tuesday, March 6, 12
![Page 29: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/29.jpg)
Автоматизирано тестване
Tuesday, March 6, 12
![Page 30: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/30.jpg)
Version control(Git)
Tuesday, March 6, 12
![Page 31: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/31.jpg)
1 Друга гледна точка
2 Да придобиете умения
Tuesday, March 6, 12
![Page 32: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/32.jpg)
1 Друга гледна точка
2 Да придобиете умения
3 Да се забавляваме
Tuesday, March 6, 12
![Page 33: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/33.jpg)
Организационни
Tuesday, March 6, 12
![Page 34: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/34.jpg)
1 2 3
Tuesday, March 6, 12
![Page 35: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/35.jpg)
1 Лекции
Tuesday, March 6, 12
![Page 36: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/36.jpg)
вторник и четвъртък19 часа
зала 101/200, ФМИ
Tuesday, March 6, 12
![Page 37: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/37.jpg)
+1
Tuesday, March 6, 12
![Page 38: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/38.jpg)
1 Лекции
2 Сайт
Tuesday, March 6, 12
![Page 40: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/40.jpg)
1 Лекции
2 Сайт
3 Консултации
Tuesday, March 6, 12
![Page 41: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/41.jpg)
Торонто
Tuesday, March 6, 12
![Page 42: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/42.jpg)
Консултации
Tuesday, March 6, 12
![Page 43: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/43.jpg)
≈300
160
130
100
7013376
54
3
Tuesday, March 6, 12
![Page 44: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/44.jpg)
Два теста50 точки
Задачи50 точки
Проект50 точки
Други150 точки
Tuesday, March 6, 12
![Page 45: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/45.jpg)
Subject to change.
Tuesday, March 6, 12
![Page 46: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/46.jpg)
Други
Tuesday, March 6, 12
![Page 47: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/47.jpg)
1. Участие в час (сникерси)2. Бонус за домашни3. Форум4. Да помагате на другите5. Ревизиране на домашни
Tuesday, March 6, 12
![Page 48: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/48.jpg)
Езикът Python
Tuesday, March 6, 12
![Page 49: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/49.jpg)
питон vs. пайтън
Tuesday, March 6, 12
![Page 50: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/50.jpg)
Python 3Python 2.7
Tuesday, March 6, 12
![Page 51: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/51.jpg)
ООПTuesday, March 6, 12
![Page 52: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/52.jpg)
Процедурният стил също е на почит
Tuesday, March 6, 12
![Page 53: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/53.jpg)
Интерпретируем
Tuesday, March 6, 12
![Page 54: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/54.jpg)
Динамичен
Tuesday, March 6, 12
![Page 55: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/55.jpg)
Tuesday, March 6, 12
![Page 56: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/56.jpg)
Динамично типизиранDuck typing
Tuesday, March 6, 12
![Page 57: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/57.jpg)
Свободен!Tuesday, March 6, 12
![Page 58: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/58.jpg)
Испанската инквизиция(Не я очаквахте, нали?)
Tuesday, March 6, 12
![Page 59: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/59.jpg)
Monty PythonTuesday, March 6, 12
![Page 60: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/60.jpg)
Защо Python?
Tuesday, March 6, 12
![Page 61: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/61.jpg)
Супер прост синтаксисprint("Hello, World!")
def answer(question): if question == 'Life' or question == 'Universe': return 42 else: return 6 * 9 # четиридесет и две
Tuesday, March 6, 12
![Page 62: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/62.jpg)
alek@ricotta:~$ python3Python 3.2.2 (v3.2.2:137e45f15c0b, Sep 3 2011, 17:28:59) >>> a = 4 + 12>>> a * 42672
Интерактивен интерпретатор
Tuesday, March 6, 12
![Page 63: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/63.jpg)
Култура на езика
Tuesday, March 6, 12
![Page 64: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/64.jpg)
• използване на инстроспекция за по-малко код
Култура на езика
Tuesday, March 6, 12
![Page 65: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/65.jpg)
• използване на инстроспекция за по-малко код • итератори/генератори
Култура на езика
Tuesday, March 6, 12
![Page 66: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/66.jpg)
• използване на инстроспекция за по-малко код • итератори/генератори • Test Driven Development
Култура на езика
Tuesday, March 6, 12
![Page 67: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/67.jpg)
• използване на инстроспекция за по-малко код • итератори/генератори • Test Driven Development • функционален стил в нефунцкционалния Python
Култура на езика
Tuesday, March 6, 12
![Page 68: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/68.jpg)
• използване на инстроспекция за по-малко код • итератори/генератори • Test Driven Development • функционален стил в нефунцкционалния Python • документация още в изходния код
Култура на езика
Tuesday, March 6, 12
![Page 69: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/69.jpg)
Tuesday, March 6, 12
![Page 70: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/70.jpg)
бавен?
Tuesday, March 6, 12
![Page 71: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/71.jpg)
CTuesday, March 6, 12
![Page 72: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/72.jpg)
GvR
Guido van Rossum
BDFLBenevolent Dictator For Life
Tuesday, March 6, 12
![Page 73: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/73.jpg)
...Tuesday, March 6, 12
![Page 74: Програмиране с Python 2012, лекция 0](https://reader036.vdocuments.site/reader036/viewer/2022062320/55ad5ae11a28ab2a508b4886/html5/thumbnails/74.jpg)
Tuesday, March 6, 12