Найти - Пользователи
Полная версия: Помогите разобраться новичку
Начало » Python для новичков » Помогите разобраться новичку
1
snake524
Здравствуйте, решил я начать изучать Питон, спустя 10 лет,как бросил программирование,раньше увлекался Делфи, Бэйсиком, не судите строго,но возникли вопросы,возможно очевидные,но мне пока не разобраться, так вот:
1) В Питоне существует куча библиотек для разных задач,типа джанго, это понятно, но во всех вакансиях пишут что-то наподобие “Требуется хорошее владение языком Python”, а уже после этого пишут например хорошее знание того же Джанго.Вопрос в том,что означает “Владение языком Питон”, в чем нужно разбираться?Что нужно понимать?Может посоветуете какую-то литературу именно по этой части?(Сейчас читаю книгу “Сам себе программист” Кори Альтхоффа и кое-что беру из книги “Простой Питон” Билл Любанович)
2)Второй момент заключается в том, что мне пока непонятно,как применять,то что написано, например прогу “Привет,мир!”, на вышеупомянутых Делфи,Бейсике, взял скомпилировал, получил файл,который взял и передал другу, а как здесь все устроено?Для написания примеров из книг по которым учусь, использую оболочку Спайдер из Анаконды.
Вот пока основные 2 пункта,в которых разобраться, заранее благодарен.
py.user.next
snake524
Вопрос в том,что означает “Владение языком Питон”, в чем нужно разбираться?Что нужно понимать?
Знание ядра языка. В ядро языка входять неотъемлемые части. Так и определяешь: что нельзя убрать из питона, то и является неотъемлемой частью. Можешь по импорту определять. Всё, что импортируется, не входит в ядро языка, даже модуль sys.

В ядре много нюансов и их незнание тобой будет приводить к тому, что ты будешь делать разные действия через одно место - будешь писать код на десять строк, где можно написать то же самое в одну строку и к тому же красивее ещё. Если компания требует хорошее знание питона, то у них, скорее всего, красивый код в проекте. Ты туда явно не впишешься со своими нулевыми знаниями, потому что за тобой надо будет всё время мусор всякий удалять и переписывать моменты, иначе ты быстро устроишь им там помойку в проекте. Они тебя отбреют ещё до входа в компанию, дав тестовое задание, где все твои незнания проявятся во всей красе.

snake524
Второй момент заключается в том, что мне пока непонятно,как применять,то что написано, например прогу “Привет,мир!”, на вышеупомянутых Делфи,Бейсике, взял скомпилировал, получил файл,который взял и передал другу, а как здесь все устроено?
На Дельфи и Бейзике ты точно так же не можешь ограничиваться одним файлом. Если ты мыслишь программами, уровень которых - один файл, то до индустрии ты просто не дорос.
Посмотри на профессиональные программы - фотошоп, майкрософт офис, игра танки - ты там видишь где-нибудь один файл, переданный другу?
Так вот, неважно, на чём написана программа, распространяется она всегда одинаково и ответ лежит на поверхности. Задай себе вопрос “как я устанавливаю себе игру танки? как я устанавливаю себе майкрософт офис? как я устанавливаю себе даже драйверы простые для принтера какого-нибудь нового?”.
Ты нигде там не найдёшь одного файла; как правило, этот один файл там будет упакованным дистрибутивом, производящим предварительную установку. А запуск программы будет осуществляться только после того, как программа будет полностью установлена в систему со всеми своими причендалами в правильную директорию и записана во все нужные места в реестре уиндоус. Можешь заглянуть в директорию Program Files и в программах там поискать один файл - не найдёшь.
snake524
py.user.next
Спасибо за ответ.А что касается программ с одним файлом, конечно согласен, я такой пример привел для того чтобы обозначить, что в том же Делфи компилируется запускающий файл, вот я о чем))
py.user.next
snake524
я такой пример привел для того чтобы обозначить, что в том же Делфи компилируется запускающий файл
Ты должен собрать дистрибутив, в котором будет находиться установщик питона и твои скрипты, и сделать из него файл exe или файл msi. При его запуске установится питон в систему и скрипты установятся в свою директорию, потом создастся ярлык на рабочем столе и ещё пользователю будет показана картинка “программа установлена, запустите её с рабочего стола”. Таким образом, он никогда не увидит даже скриптов, а будет просто запускать всё через ярлык, как он это делает со всеми остальными программами, не зная про их dll, хотя их там навалом.

Если ты не способен всё это сделать, то можешь поизучать программки, которые делают экзешник из скрипта - cxFreeze и прочие, но это путь для сам знаешь кого. Лучше тебе поизучать конструкторы дистрибутивов, которыми все в мире пользуются и не думают “как бы все dll-шки в количество ста штук в один exe-файл засунуть? а то вот какой-то друг точно не поймёт, что их запускать не надо”. Видишь, проблема не в тупых пользователях, проблема в том, что ты не понимаешь процесса дистрибуции, в котором сам же и находишься и которым уже пользовался сто раз.
gtlhbkkj
py.user.next
Знание ядра языка. В ядро языка входять неотъемлемые части. Так и определяешь: что нельзя убрать из питона, то и является неотъемлемой частью.
мне ядро языка в этой жизни не изучать, ибо не программист. Мне бы пару прикладных задачек решить.
Но для следующей жизни очень интересно было бы узнать, в каком направлении нужно читать, смотреть, чтобы начать постигать сущность ядра. Терминология, книги, и т.д. Спасибо.
Rafik
gtlhbkkj
мне ядро языка в этой жизни не изучать, ибо не программист…
Это ошибочная точка зрения. Ядро содержит в себе самые основные моменты. Оно невелико по объему: если не ошибаюсь, то это всего лишь встроенные типы и встоенные же функции. Для написания хорошо читаемого и безотказного, как автомат Калашникова, кода необходимо знать ядро и тонкости использования всего встроенного. Это чтобы не городить огород, когда можно сделать одной строкой.
Для написания какого-то одного-двух скриптов вполне достаточно вплонтую изучить возможности используемых типов и функций. Когда количество разнообразных скриптов, написанных тобой, перевалит за десяток-другой, ты будешь знать более половины ядра.
py.user.next
gtlhbkkj
Но для следующей жизни очень интересно было бы узнать, в каком направлении нужно читать, смотреть, чтобы начать постигать сущность ядра.
Ядро
https://docs.python.org/3/reference/index.html

Стандартная библиотека
https://docs.python.org/3/library/index.html

Разные общепринятые договорённости
https://www.python.org/dev/peps/

Договорённость по стилю кода
https://www.python.org/dev/peps/pep-0008

Книги по питону
https://wiki.python.org/moin/PythonBooks

Можешь взять книгу Dive Into Python 3. Она бесплатная и даёт хорошую подготовку.
https://diveintopython3.net/
https://pep8.ru/doc/dive-into-python-3/


tags: docs
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB