1. Python / Говнокод #8359

    −90

    1. 1
    def mprint(*args): print (reduce(lambda a,b: a+b, [u"{"+str(i)+"} " for i in range(len(args))])).format(*args).encode('utf-8')

    Делает то же самое, что и print, но в правильной кодировке) Еще бы от скобочек избавиться при вызове.

    Запостил: hakimovis, 30 Октября 2011

    Комментарии (17) RSS

    • >(reduce(lambda a,b: a+b,
      Ха, сразу видно, что брат из 1C не знает про ШТТТУК ОЩШТ
      Ответить
      • а при чем тут 1С и ШТТУК ОЩШТ?
        Ответить
        • "".join()
          Ответить
          • это было бы скучно) Так при чем тут 1С? Кстати никогда с ним не знакомился, зря наверное. Кстати, подскажите, как сделать такой же синтаксис, что и у print-а, т.е. без скобок?
            Ответить
            • Перейдите на Python3, там даже стандартный принт со скобками.
              Никак.
              А как?
              А никак.
              Но так не интересно?
              Ответить
            • > Кстати, подскажите, как сделать такой же синтаксис, что и у print-а, т.е. без скобок?

              Да легко: http://eli.thegreenplace.net/2010/06/30/python-internals-adding-a-new-statement-to-python/

              Чтоб поядреней.
              Ответить
              • Ага, ясно, мне нравятся скобки.
                Ответить
              • Отличный подход. Нужен новый управляющий оператор в языке? Давайте хакнем код парсера, что может быть проще!
                лисперы хитро ухмыляются
                P.S. по теме нагуглилось http://metapython.org/
                Ответить
                • Забавно, больше гранат... хороших и разных.
                  Ответить

    Добавить комментарий