Лекция 4. Строки, байты, файлы и ввод/вывод.Roman Brovko
Строковые литералы и сырые строки. Строки и Юникод. Основные методы работы со строками. Модуль string. Байты. Кодировки. Файлы и файловые объекты. Методы работы с файлами. Модуль io
Синтаксис объявления классов. Атрибуты, связанные и несвязанные методы, __dict__, __slots__. Статические методы и методы класса. Свойства, декоратор @property. Наследование, перегрузка методов и функция super. Декораторы классов. Магические методы.
Лекция 8. Итераторы, генераторы и модуль itertools.Roman Brovko
Два протокола итераторов: __next__ + __iter__ и __getitem__. Итераторы и цикл for, а также операторы in и not in. Генераторы, оператор-выражение yield. Генераторы как: итераторы, сопрограммы, менеджеры контекста. Модуль itertools.
Модули threading, queue и concurrent.futures. Использование потоков для параллельных вычислений на Python. GIL. Параллельность и конкурентность. Модуль asyncio. Модуль multiprocessing.
Зачем тестировать? Тестирование в интерпретаторе и доктесты. Модуль unittest. Пакет py.test - на порядок лучше. Тестирование свойств и пакет hypothesis.
Лекция 5. Встроенные коллекции и модуль collections.Roman Brovko
И снова встроенные коллекции: кортеж, список, множество, словарь - обход в глубину, обзор методов, примеры. Почти всё про модуль collections: именованные кортежи, счётчики, defaultdict, OrderedDict.
Лекция 2. Всё, что вы хотели знать о функциях в Python.Roman Brovko
Синтаксис объявления функций. Упаковка и распаковка аргументов. Ключевые аргументы и аргументы по умолчанию. Распаковка и оператор присваивания. Области видимости, правило LEGB, операторы global и nonlocal. Функциональное программирование, анонимные функции. Функции map, filter и zip. Генераторы списков, множеств и словарей. Немного о PEP 8.
Лекция 7. Исключения и менеджеры контекста.Roman Brovko
Исключения, зачем они нужны и как их обрабатывать. Встроенные исключения и базовые классы BaseException и Exception. Операторы try...except..else..finally. Менеджеры контекста и модуль contextlib.
Лекция 12. Быстрее, Python, ещё быстрее.Roman Brovko
Измерение времени работы кода на Python с помощью модулей timeit, cProfile и line_profiler. Немного о NumPy. JIT и AOT компиляция кода на Python на примере Numba и Cython.
Olexandra Dmytrenko
QA Automating at EPAM Systems
I'll show you how to switch from writing standard code using good old Java7 into writing it using functional way presented in Java8. The training is counted on beginners in the subject who like discovering the new horizons or for those who want to become more firm in using the new lambda features.
The document discusses strategies for monitoring mule deer populations in Utah, including collecting annual data on herd composition, fawn production, and habitat use. It outlines methods for estimating doe and fawn mortality rates across representative units statewide. Standardized population models are used to evaluate herd size and trends over time using field data on ratios of fawns to does, survival rates, and harvest numbers.
Презентация для доклада на конференции SQA Days-15, профессиональное выгорание, где найти ресурс, когда мы выдохлись, как не разочароваться в себе и в профессии, ожидания и реальность - узкие места карьеры.
Лекция 5. Встроенные коллекции и модуль collections.Roman Brovko
И снова встроенные коллекции: кортеж, список, множество, словарь - обход в глубину, обзор методов, примеры. Почти всё про модуль collections: именованные кортежи, счётчики, defaultdict, OrderedDict.
Лекция 2. Всё, что вы хотели знать о функциях в Python.Roman Brovko
Синтаксис объявления функций. Упаковка и распаковка аргументов. Ключевые аргументы и аргументы по умолчанию. Распаковка и оператор присваивания. Области видимости, правило LEGB, операторы global и nonlocal. Функциональное программирование, анонимные функции. Функции map, filter и zip. Генераторы списков, множеств и словарей. Немного о PEP 8.
Лекция 7. Исключения и менеджеры контекста.Roman Brovko
Исключения, зачем они нужны и как их обрабатывать. Встроенные исключения и базовые классы BaseException и Exception. Операторы try...except..else..finally. Менеджеры контекста и модуль contextlib.
Лекция 12. Быстрее, Python, ещё быстрее.Roman Brovko
Измерение времени работы кода на Python с помощью модулей timeit, cProfile и line_profiler. Немного о NumPy. JIT и AOT компиляция кода на Python на примере Numba и Cython.
Olexandra Dmytrenko
QA Automating at EPAM Systems
I'll show you how to switch from writing standard code using good old Java7 into writing it using functional way presented in Java8. The training is counted on beginners in the subject who like discovering the new horizons or for those who want to become more firm in using the new lambda features.
The document discusses strategies for monitoring mule deer populations in Utah, including collecting annual data on herd composition, fawn production, and habitat use. It outlines methods for estimating doe and fawn mortality rates across representative units statewide. Standardized population models are used to evaluate herd size and trends over time using field data on ratios of fawns to does, survival rates, and harvest numbers.
Презентация для доклада на конференции SQA Days-15, профессиональное выгорание, где найти ресурс, когда мы выдохлись, как не разочароваться в себе и в профессии, ожидания и реальность - узкие места карьеры.
Get the most from your professional network on LinkedInBrian Hinchcliffe
The document outlines the steps to get started on LinkedIn including: 1) Signing up and building a profile with a photo, details about experience and links; 2) Finding connections by checking contacts of your own contacts; 3) Making recommendations and networking through groups, answering/asking questions. The goal is to get the most out of your professional network on LinkedIn.
Жизненный цикл тестировщика (Урансофт, семинар TrueTester #3)Catherine Tipanova
Презентация для семинара "Как стать true-тестировщиком #3". Жизненный цикл тестировщика, большие и маленькие компании, как выбрать первую работу, большие и маленкие команды, процессы разработки, место тестировщика в процессах.
Enormous opportunity exists for government agencies to take advantage of mobile. But tackling this endeavor without a roadmap can be overwhelming. That’s why we put together our Government Mobile Marketing Quick6 LookBook. It answers three questions:
- Why government and mobile?
- What examples are out there that government marketers can learn from?
- What are best practices for government mobile marketing initiatives?
This document discusses predator management policies and the impacts of different predators on mule deer populations in Utah. It finds that coyotes have the largest impact on fawn survival, accounting for 48% of fawn mortality based on recent studies. Black bears and cougars have smaller impacts, primarily preying on fawns, while adult doe mortality is currently around 14%. The state has an aggressive predator control program focused on coyotes and cougars that aims to increase deer populations when they fall below objectives and predation is identified as a limiting factor.
Too many adult language learners drop-out of language courses, the EU funded project, 'Dont Give Up' offers language schools, teachers and students a complete set of motivational Best Practices for every level of adult language learning to ensure student success.
Project websites:
www.dontgiveup.eu
Cooridnator:
www.jazykova-skola-pelikan.cz
Mobile CRM Webinar: 6 Must Haves For Effective Cross Channel CRMWaterfall Mobile
Too often people talk about marketing channels within specific silos. The preferred alternative is cross-channel (as opposed to multichannel) marketing. In this webinar, featuring guest commentary from Constant Contact's Michael Karampalas, we unpack exactly how companies can launch an effective cross channel strategy focused on CRM. From the Getting It Right In Mobile series.
Mobile-led innovations for Direct customer relationshipsRamesh Raman
Extensive media and channel fragmentation and changing demographics have made direct consumer engagement as necessary as it is challenging. However many, otherwise leading, organisations lack the ability to identify and engage with their customers directly
* How can brands innovatively use the exponentially increasing power of mobile and social channels to build a single-view of the consumer?
* How can brands leverage this single-view of a customer to build a direct relationship with them?
Presentation for South Shore Grants on March 4, 2011. Topics including managing fundraising information, processing gifts, and regulatory requirements.
Mobile's Data Game: How to Play by the Rules and WinWaterfall Mobile
The document summarizes a webinar presented by Waterfall Mobile about developing a cross-channel mobile strategy. The webinar covered how mobile drives cross-channel marketing, the different mobile channels including SMS, IVR, push notifications, social media, and passbook. It also discussed managing the complex mobile messaging ecosystem and how the mobile landscape is evolving with technologies like mobile wallets, 1-to-1 communication, and augmented reality. Key takeaways included implementing a cross-channel strategy in phases, optimizing the messaging value chain, and focusing on customers.
Getting it Right in Mobile: How to Use Mobile to Build RelationshipsWaterfall Mobile
Key goals for effective and efficient customer relationship management have not changed - acquire new customers, build loyalty, and reduce costs. With the advent of cell phones, consumers are forcing businesses to expand their thinking to now include the mobile channel to meet and further those fundamental objectives.
The mobile channel is evolving from one-time, one-off projects to Mobile CRM, where marketers are optimizing one-to-one customer communications and developing more meaningful relationships through this emerging medium.
This document contains descriptions of 20 artworks from various time periods and locations. The artworks include sculptures, paintings, and architectural structures from ancient Greece, Rome, the Middle East, and Byzantine Europe. Materials range from marble, bronze, and stone to mosaics, ivory, and frescoes. The pieces are housed in prominent museums such as the Louvre, British Museum, and sites in Rome, Athens, and Istanbul.
Integrating SMS Into Your Cross-Channel Messaging StrategyWaterfall Mobile
Waterfall Mobile and Bronto present an insider's perspective about the current state of mobile marketing, where the industry is headed, and what you can do now to stay ahead of the curve. Learn rich insights and clear takeaways that you can integrate right away to augment your communications strategy, including:
- Best practices and examples of effective SMS integration with email
- Required standards for successful testing of integrated SMS
Программирование как способ выражения мыслей. Levon Avakyan
Я расскажу на простейших примерах как функционирует современный компьютер, какие языки программирования бывают, для чего они используются, какие парадигмы лежат в их основе. По сути, язык программирования это инструмент, с помощью которого можно рассказать машине, чего же мы от неё хотим, тем самым воплотив свои мысли.
Лекция #5. Введение в язык программирования Python 3Яковенко Кирилл
Web-программирование
Лекция #5. Введение в язык программирования Python 3
Цикл лекций читается в Омском государственном университете им. Ф.М.Достоевского на факультете компьютерных наук.
Лектор: Яковенко Кирилл Сергеевич.
Сергей Аверин, То, что вы хотели знать о HandlerSocket, но не смогли нагуглитьTanya Denisyuk
После этого доклада вы будете знать, что такое Handlersocket, нужен ли он вам и «как его готовить».
Все как обычно — грабли, шишки, слезы из реальной жизни, направления «куда копать», примеры из практики. Вместе с докладом Сергей выложит код самописного php-клиента для HS, который мы используем в Badoo.
Занятие №3 в рамках Курсов программирования Ruby on Rails.
Группа курсов «ВКонтакте»: http://vk.com/ruby_school
Организатор — Агентство интернет-маркетинга Мэйк makeagency.ru. Курсы проводятся на базе Кузбасского государственного технического университета, кафедры «Информационные и автоматизированные производственные системы».
Видео: https://www.youtube.com/watch?v=IUtbbN9aevU
Веб-приложения становятся все больше и сложнее, так что многое остается вне нашего поля зрения. Поэтому фреймворки и приложения должны предоставлять дополнительные инструменты, упрощающие разработку и понимание того, что же происходит у них там — «под капотом». В ходе доклада я расскажу о таких инструментах: какими они могут быть, какие задачи решать, что необходимо для их создания.
SPA Meetup, 28 февраля 2015, Москва, Авито
Алексей Куканов — Параллелизм в C++: управляйте приложением, а не потоками!Yandex
Алексей Куканов, Intel.
Последняя версия стандарта С++ добавляет в язык и библиотеку поддержки средства для использования потоков исполнения (threads) и синхронизации между ними. Однако это лишь необходимая низкоуровневая база для внедрения параллелизма. Эффективная разработка параллельных программ требует высокоуровневого API, реализующего типичные шаблоны использования параллелизма в виде, пригодном для применения в широком спектре алгоритмов и приложений. В докладе речь пойдёт о наиболее часто встречающихся параллельных шаблонах, реализованных в программных моделях Intel® Threading Building Blocks и Intel® Cilk Plus, и о примерах их использования.
5. Достоинства
• простой синтаксис
o мало ключевых слов
o форматирование
• легкость в обучении
• синтаксическая мощь
• скорость
• библиотеки
o масса готовых
o расширяемость
• разумный дизайн (import this)
• работает везде
o множество портов
o машинно-независимый байт-код
6. Программы
• текстовые .py файлы
o может быть и программой и модулем
o это часто используется для тестов
• любой модуль отдельное пространство имен
• пространство имен модуля - глобально
7. Переменные и типы
• не нуждается в объявлении
>>> a = 1
>>>
• присваивание не возвращает значения
• >>> a
1
• перед использованием надо создать
>>> b
.....
Name error: name 'b' is not defined
• всегда имеют тип
>>> type(a)
<type 'int'>
8. Строки
• заключаются в кавычки (любые)
• тройные кавычки - многострочники
• последовательность символов, включая NULL
o фактически заменяют массивы байтов
• >>> s = 'Hello'
>>> s
'Hello'
>>> s = "Say 'hello'"
>>> s
"Say 'hello'"
>>> s = """This can be
a multiline string"""
9. Числа
• int - соответсвует long в С
o >>> 5 / 2
2
o >>> 5 / 2.0
2.5
• float - соответсвует double
• long - не ограниченной длины
o автоматически конвертируется из int
o >>> h = 1L << 64
>>> h ** 5
2135987035920910082395021706169552114
6027045223566527699470416078222197257
80640550022962086936576L
10. Списки
• хранят любые элементы
o заменяют массивы
o задаются с помощью [ ]
• >>> lst = []
>>> lst.append(1)
>>> lst.append("hi")
>>> len(lst)
2
>>> lst[0] = 2
>>> a = lst.pop()
11. Tuples
• таплы, или кортежи
o сходны по принципу со списками
o последовательность любых элементов
o не изменяемы
• автоматическая упаковка/распаковка
o >>> point = 2, 3
>>> x, y = point
>>> x
2
o >>> single = (1,)
• используются для возврата нескольких значений из
функций
12. Словари
• хранят пары ключ-значение
o иногда называются хешами
o ключи должны быть неизменяемыми
o значения могут быть любыми
• >>> d = {}
>>> d['foo'] = 'bar'
>>> d[1] = 'boz'
>>> cd = {'name': 'John Applseed',
'age': 15,
'tags': ['friend', 'school']}
13. Блоки
• формируются отступами
o двоеточие - начало блока
o можно использовать пробелы и табы
o можно смешивать, но лучше - не нужно
o стандарт - 4 пробела
• >>> if True:
... print 'Hi'
...
Hi
>>>
14. Циклы
• цикл for используется для итерирования
• >>> for ch in 'xyz':
... print ch
...
x
y
z
• функция xrange() возвращает генератор для циклов со
счетчиком
• while - цикл с условием
• есть операторы continue и break
• циклы могут иметь блок else
15. Функции
• объявляются ключевым словом def:
o >>> def useless(val):
... return val + 2
...
>>> useless(3)
5
• функции являются значениями
o >>> useless
<function useless at fac680>
>>> foo = useless
>>> foo(2)
5
16. Классы
• создаются ключевым словом class
• бывают old и new style
• >>> class Simple(object):
... def __init__(self, param):
... self._param = param
... self._inner = 5
... def get_param(self):
... return self._param
...
>>> s = Simple(4)
>>> print s.get_param()
4
17. Классы (продолжение)
• специальные методы
o __init__ - инициализатор
o __del__ - деструктор
• self - явный указатель на экземпляр класса
o автоматически подставляется при вызове
o имя self - не обязательное, но рекомендуемое
• как и функция является значением
o >>> Other = Simple
>>> cl = Other(2)
18. Модули
• реализуются на Python и C/C++
• для подключения используется import
o >>> import math
>>> mat.sin(1)
• возможен частичный импорт
o >>> from math import cos
>>> cos(0)
• импорт со сменой имени
o >>> from os.path import join as path_join
>>> path_join('/usr/bin/', 'python')
19. Исключения
• используются для обработки ошибок
• >>> try:
... 1/0
... except ZeroDivisionError:
... print 'Ouch'
...
Ouch
• Допускается несколько блоков except
• Блок finally - для всегда выполняющегося кода
• Блок else - если не было исключений
20. Потоки
• легко реализуются
• >>> from time import sleep
>>> from threading import Thread
>>> class MyThread(Thread):
... def run(self):
... for i in xrange(3):
... print i,
... sleep(1)
...
>>> t = MyThread()
>>> t.start()
0 1 2
21. Стандартная библиотека
• в поставку python входит набор стандартных
библиотек
• реализована масса функций
o сокеты; протоколы интернет; сервисы ОС; GUI (Tk);
работа с СУБД; работа с датами, временем и
календарями; отладчик; профилировщик; парсер
python; работа с файлами; персистентность;
многопоточность и многопроцессовость и т.д.