Стандартная библиотека питона
- два слова про версии питона
- import vs from; import as
- math: hypot, atan2; degrees, radians
- pickle, shelve:
- pickle.load, pickle.dump; shelve.open(name)
ConfigParser:
c = [Safe|Raw]ConfigParser(defaults)
- c.read(names), c.readfp(open(...)), c.write(names)
- c.getint, c.getfloat, c.getboolean, c.get
- % и словари
- logging:
- logging.basicConfig(filename=..., level=...); logging.debug, logging.info, logging.warning, logging.error, logging.critical
- logging.basicConfig; logger = logging.getLogger("name"); logger.*
- ?: re
- re.compile, re.search, re.match, re.split, re.escape, re.sub;
- m.group, m.groups
- всячина про файлы:
- os.path: join, split; exists, isdir, isfile, islink...; expanduser, expandvars, normpath
- os: system, popen; subprocess
- ?: всячина про файлы:
- os: listdir, chmod, chdir
- shutil: copy, move
- glob
- ?: tempfile: mkstemp, mkdtemp
- ?: fileinput: fileinput.input(), fileinput.lineno()
- ?: random: randint, rand, choice, shuffle ...
- ?: str vs repr (vs unicode); pprint
- ?: copy: copy, deepcopy
- ?: StringIO
- ?: collections.deque, collections.defaultdict
Контрольная работа
Напишите функцию reverse_complement, которая получает на вход последовательность ДНК в виде строки и возвращает комплиментарную последовательность. Входная последовательность может содержать пробелы и переносы строк – они должны игнорироваться. Входная последовательность может состоять как из заглавных, так и из прописных букв. Регистр букв в выходной последовательности игнорируется. Если входная последовательность содержит недопустимые символы, функция должна выбрасывать исключение с пояснением. Пример использования функции: