Виктор Ашик - Python, part 1
description
Transcript of Виктор Ашик - Python, part 1
![Page 1: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/1.jpg)
![Page 2: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/2.jpg)
Виктор Ашик
Основы Python 1
![Page 3: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/3.jpg)
3
Почему Python
• Открытость• Простота использования• Читаемость кода• Производительность• Универсальность
![Page 4: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/4.jpg)
4
Зачем Python сисадмину
• Структуры данных• Библиотеки• Средства разработки
![Page 5: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/5.jpg)
5
Что нужно для начала
• Установить Python (если нет) — python.org
• Наладить запуск программ и интерпретатора
• Установить IPython
![Page 6: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/6.jpg)
6
Демо
![Page 7: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/7.jpg)
7
Настроить текстовый редактор
echo filetype plugin indent on >> ~/.vimrc
mkdir -p ~/.vim/ftplugin/
cat <<EOF > ~/.vim/ftplugin/python.vim
setlocal tabstop=4
setlocal softtabstop=4
setlocal shiftwidth=4
setlocal textwidth=80
setlocal smarttab
setlocal expandtab
EOF
![Page 8: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/8.jpg)
8
![Page 9: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/9.jpg)
9
![Page 10: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/10.jpg)
10
pip
• Python Package Index• easy_install pip• pip install pep8
![Page 11: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/11.jpg)
11
virtualenv
• apt-get install python-virtualenv• virtualenv env• source env/bin/activate• pip install pep8
![Page 12: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/12.jpg)
12
Hello world
#!/usr/bin/env pythonprint("Hello!")
![Page 13: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/13.jpg)
13
Hello main
#!/usr/bin/env python
def main(): print("Hello!")
if __name__ == '__main__': main()
![Page 14: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/14.jpg)
14
Переменные
a = 2b = 'abcd'c = len(b)
![Page 15: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/15.jpg)
15
Модули
import sysdir(sys)help(sys)print(sys.platform, sys.version)sys.exit(0)
![Page 16: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/16.jpg)
16
Строки (1)
a = ''It's a string''l = len(a)b = 'a\nb'c = """a... b"""raw = r'a\nb'd = a + b
![Page 17: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/17.jpg)
17
Строки (3)
dir(str)help(str)
![Page 18: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/18.jpg)
18
Строки (4) — слайсы
a = '01234567'b = a[0]c = a[0:2]d = a[:]e = a[-1]f = a[:-1]g = a[-1:]
![Page 19: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/19.jpg)
19
Строки (5) — оператор %
longline = ("%d quick %s fox jumped over the %s dog" % (2, "brown", "lazy"))
![Page 20: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/20.jpg)
20
Управляющие структуры: if
from datetime import datetime
now = datetime.now()if now.hour < 21: print('Continue')elif now.hour < 22: print('Finishing')else: print('Go home')
![Page 21: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/21.jpg)
21
Списки
list = ['com', 'net', 'org', 'mil', 'gov']
if 'org' in list: print('found')
for i in list: print(i)
![Page 22: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/22.jpg)
22
Range
for i in range(10): print(i)
![Page 23: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/23.jpg)
23
While
a = range(10)i = 0while i < len(a): print(a[i]) i = i + 2
![Page 24: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/24.jpg)
24
Методы списков
append(elem)remove(elem)index(elem)sort()reverse()pop(index)insert(index,elem)
![Page 25: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/25.jpg)
25
Сортировка
• sorted(list)
• list.sort()
• sorted(list,key=str.lower)
![Page 26: Виктор Ашик - Python, part 1](https://reader034.fdocuments.net/reader034/viewer/2022051013/54876bb1b47959190d8b53f8/html5/thumbnails/26.jpg)
26
Продолжение следует