• Как работает __init__.py?

    DMGarikk
    @DMGarikk
    Lead Software Developer
    Перечитав комментарии, я думаю что правильный ответ такой:
    да потому что разработчики решили сделать именно так, решили сделать маркером пакета этот файл... а сейчас уже все привыкли
    точно также как в других языках фигурные скобки, begin/end, точка с запятой... без которых питон обходится, а что другим языкам мешает? вот по этой-же самой причине
    Ответ написан
    Комментировать
  • Как работает компиляция модулей в python?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Python
    Седой и строгий
    First, it always recompiles and does not store the result for the module that’s loaded directly from the command line.

    Значит, что скрипт переданный интерпретатору непосредственно будет всегда компилироваться заново. Если написать python test.py, то неважно есть ли test.pyc. А если test.py будет импортироваться из другого скрипта или интерактивного сеанса интерпретатора, то будет загружена скомпилированная версия из кэша.

    Second, it does not check the cache if there is no source module.

    Если нет исходного файла, кэш в каталоге __pycache__ будет проигнорирован.

    To support a non-source (compiled only) distribution, the compiled module must be in the source directory and there must not be a source module.

    Чтобы выполнялась скомпилированная версия при отсутствии исходника, нужно чтобы pyc-файл лежал не в __pycache__, а вместо py-файла.
    Ответ написан
    Комментировать
  • Можно ли назначать переменные с помощью итераций FOR?

    adugin
    @adugin Куратор тега Python
    А какую задачу требуется решить? Вероятно, можно обойтись этим:
    from collections import namedtuple
    
    Record = namedtuple('Record', 'a, b, c, d, e, f, g, h')
    r = Record(*[1]*8)
    
    print(r.a, r.b, r.h)

    Или так:
    class O():
        pass
    
    o = O()
    
    for attr in 'abcdefgh':
        setattr(o, attr, 1)
        
    print(o.a, o.b, o.h)
    Ответ написан
    Комментировать
  • Можно ли назначать переменные с помощью итераций FOR?

    SelfiAS
    @SelfiAS
    ▬ PYTHON ▬ JUNIOR ▬
    chars = 'abcdefgh'
    for x in chars:
        exec('{} = 1'.format(x))
    print(a, b, c)

    Можно так.
    Ответ написан
    Комментировать
  • Можно ли назначать переменные с помощью итераций FOR?

    longclaps
    @longclaps
    chars = 'abcdefgh'
    for char in chars:
        globals()[char] = 1
        
    print(a, b, c)

    Вообще-то это дрянная идея.
    Ответ написан
    1 комментарий
  • Английский. Где учить в интернете?

    @AnneSmith
    самая ленивая
    радио, прежде всего слушать радиопрограммы или аудио подкасты, пока тошнить не начнет
    словарь - только английский толковый, никаких переводов на русский

    начинайте с простого материала, хоть даже с детских передач и мультиков, чтобы набрать минимальный разговорный, а потом только аудио, видео перебивает слишком большим количеством визуальной информации, и ушам не нужно напрягаться, чтобы понять на слух

    аудирование - самый сложный навык, поэтому ему учатся с рождения, потом учатся говорить, а уже только потом читать и писать

    если вы будете придерживаться этой естественной человеческой последовательности, то вы очень быстро научитесь понимать смысл слов из контекста без словаря, запомните правильные интонации, произношение, а главное - правильный контекст употребления слов и выражений, тот, что отличает носителя от остальных

    следующий шаг - заучивание готовых фраз и выражений вслух и наизусть: это нужно для приучения вашего артикуляционного аппарата автоматически произносить то, что нужно и как нужно, точно так же как это происходит на родном языке, тут только многократные тренировки и повторения, как в музыке и спорте, чем больше вы заучите таким образом, тем легче вам будет в разговоре

    осилите преподавателя-носителя языка хоть по скайпу - это будет идеально, но это должен быть именно преподаватель, который умеет преподавать english as a second language - ESL

    сможете осилить хотя бы двухнедельный курс английского в стране языка - считайте, что выиграли в лотерею, потому что выучить язык можно только у носителей, все остальное - это сказки для бедных, русские в большинстве своем никогда не научатся думать, как носители английского, и поэтому навсегда обречены говорить по-русски английскими буквами

    а потом всю оставшуюся жизнь много слушать и запоминать выражения, которыми пользуются носители, отмечать, как они думают и как строят фразы в контексте, ну и читать, конечно, без этого никак

    не слушайте никого, кто будет говорить, что вам сначала нужно выучить грамматику
    сначала надо освоить разговорный английский, хоть на уровне 5-летнего ребенка, а потом вы сами сможете понимать, что и как вам учить
    Ответ написан
    1 комментарий
  • Какой курс по машинному обучению на Coursera полезнее?

    @doktr
    Data Scientist
    Вашингтонская специализация по ML мне показалась удачной. Недавно прошел ее первый курс - "Machine Learning Foundations: A Case Study Approach", сейчас изучаю второй - "Machine Learning: Regression". После курса ML от Эндрю Ына сначала показалось простовато, но, несмотря на более прикладной характер вашингтонской специализации, в нее включены некоторые алгоритмы, на которые у Ына места не хватило.
    Также большой плюс - в конце каждой недели есть не только тест, но и большое практическое задание (используется iPython Notebook, модули GraphLab, NumPy и т.д.), причем сначала используются готовые рабочие инструменты, а по мере продвижения нужно будет и собственные алгоритмы писать на Python'е. Видно, что труда в курс вложено достаточно, а это показатель того, что курс будет полезен.

    Если брать для сравнения курс Университета Джона Хопкинса "Practical Machine Learning" из специализации Data Science, то там все менее динамично и недостаточно практических заданий.

    Есть еще одна схожая специализация из Вашингтонского университета - "Tackle Real Data Challenges", но ее очень сложно воспринимать из-за достаточно монотонной подачи ведущего плюс практика предложена странная - предлагается поучаствовать в любом конкурсе на Kaggle (что само по себе, конечно, обязательная вещь, но нужны еще задания обучающие) и написать по нему обзор, что гораздо больше бы подошло курсу гуманитарной направленности, но никак не технической.

    P.S. К курсам российского производства у меня отношение скептическое. Если уж американцы в половине случаев не тянут, то чего ждать от отечественных производителей. Со специализацией МФТИ и Яндекса я, конечно, предварительно ознакомился. Начало динамичное - преподаватели вроде бы не страдают бубнением, активно жестикулируют (что тоже очень важно для более быстрого восприятия и концентрации внимания), на заднем фоне цветы, красивая мебель - все это очень хорошо. Если будет время в промежутках между вашингтонскими курсами, то обязательно пройду и этот курс.
    Пока что доступен только первый курс - там собственно машинного обучения нет (только линейная алгебра, начала анализа и Python). Но уже прослеживается нехорошая тенденция - курс состоит всего из 4 недель (понятно, что на математику и начальные знания по модулям больше тратиться не хочется, но что мешает добавить чего-то более существенного, более сложного), а в Вашингтонском первый и второй курсы (дальше пока не смотрел) - 6-недельные (по моему, меньшее количество недель в любом курсе - это явно мало, учитывая, что первая неделя в любом курсе - вводная), причем в первом же курсе в быстром темпе, но довольно подробно дан обзор по основным базовым темам и алгоритмам ML, разве что кроме нейронных сетей.
    Так что не воспринимать курс МФТИ и Яндекса как что-то более, чем дополнение к основным курсам Coursera либо рассчитанное на совсем уж начальную аудиторию, пока что особых оснований нет.
    Ответ написан
    3 комментария
  • Выучил базовые основы Python 3. Куда копать дальше?

    werevolff
    @werevolff
    Если для Web, то Django + Scrapy. На scrapy можно сразу начинать делать парсеры. Парсеры нужны очень часто, и можно сразу брать проект и делать. Для десктопа и кроссплатформенности - не знаю. Возможно, что Kivy.

    Да, чуть не забыл: Peewee. Можно и SQLAlchemy, но pewee выглядит очень изящно.
    Ответ написан
    5 комментариев
  • Математика для машинного обучения и нейронных сетей при школьной базе знаний?

    sgjurano
    @sgjurano
    Разработчик
    Программа:
    https://download.cdn.yandex.net/shad/shad_program_...

    В моём случае это выглядит примерно вот так:
    5efa13a2e5744a66a924206792e9e470.jpg

    PS: главное понимать, что познание - это процесс, если вам каких-то знаний не хватает, то их всегда можно наверстать, но это требует времени, и чем меньше вы знаете, тем больше времени требуется. Два года назад я знал математику на уровне 6 класса школы, сейчас учусь в ШАД на 2 курсе и читаю Deep Learning Book (хотя местами и приходится копаться в учебниках).

    PPS: при погружении в какую-нибудь область, первая прочитанная книга становится оглавлением к этой области знаний и углубляться дальше ты будешь уже базируясь на ней, поэтому книги накапливаются, далеко не всегда они читаются от корки до корки.
    Ответ написан
    14 комментариев
  • Machine Learning со слабой математикой?

    @seosova
    Сам мучаюсь с той же проблемой.
    Из учебников, лучший который видел, где прям приучают к матиматическому мышлению и дают понимание с самых основ:

    Курс дифференциального и интегрального исчисления ( В 3-х томах ) Фихтенгольц Г.М.

    После него можно и Кудрявцева осилить, они идут почти прям тема в тему, но Фихтенгольц все обьясняет подробнее и обстоятельнее.
    Ответ написан
    Комментировать
  • Machine Learning со слабой математикой?

    MarkNikitin
    @MarkNikitin
    Интересуют инновации, инвестицияии и стартапы
    Вам предстоит ознакомится с:
    "Курс математического анализа" (Кудрявцев) 3 тома
    "Курс высшей математики" (Смирнов)
    "Дискретная математика для программистов" (Новиков)
    Ответ написан
    Комментировать