Kodomo

Пользователь

Недостающие мелочи

План

  1. mercurial:
    • incoming
    • настройки: /etc/mercurial/hgrc vs ~/.hgrc vs .hg/hgrc

    • .hgignore

    • плугины (pydoc hgext; http://mercurial.selenic.com ; e.g: pager, convert, fetch, eol; color, hgk, progress, record; attic, ...)

    • eol, .hgeol (в репозитории)
      •    [patterns]
           ** = native
    • encode:
      •    [encode]
           *.py = sed 's/\s*$//'
    • paths:
      •    [paths]
           default = ssh://hg@kodomo.fbb.msu.ru/example
           default-push = ssh://hg@kodomo.fbb.msu.ru/py2010-mercurial
           eg = ../eg
    • hgweb
    • trac: closes, rels
  2. функции: все способы передачи параметров

Контрольная работа

  1. Что ответит питон на такие строки?
       1  >>> e = Exception("You are likely"
       2  ...     "to be eaten by a grue")
       3  >>> try:
       4  ...     print e
       5  ...     print x/0
       6  ...     raise e
       7  ... except NameError:
       8  ...     print "x is not defined"
       9  ... except ZeroDivisionError:
      10  ...     print "division by zero"
      11  ... except Exception:
      12  ...     print "an error"
    
  2. Напишите функцию convert_to_numbers, которая получает на вход список строк и либо конвертирует его элементы (in-place!) в числа, либо ничего не меняет и выбрасывает исключение ValueError, если какую-то из строк преобразовать в число не удалось. Пример диалога с питоном:

       1  >>> x = ["1", "2"]
       2  >>> convert_to_numbers(x)
       3  >>> x
       4  [1, 2] 
       5  >>> x = ["1", " 2 ", "a"]
       6  >>> convert_to_numbers(x)
       7  Traceback 
       8  ...    
       9  ValueError: invalid number
      10  >>> x  
      11  ['1', ' 2 ', 'a']