Новичок, преподающий сам Python, что еще я должен изучать? [закрытый]

Похоже, я посмотрел не в ту область видимости API. Вот что я хотел: https://developers.google.com/resources/api-libraries/documentation/drive/v3/python/latest/drive_v3.files.html#list

10
задан Giffyguy 5 August 2009 в 18:40
поделиться

11 ответов

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

Как думать, как ученый: учиться на Python доступен в Интернете и является отличным введением в концепции высокого уровня, которые заставляют компьютеры работать. И даже это зависит от Python.

Если вы хотите, чтобы ваш мозг был вывернут наизнанку, SICP справится с этим. Я не рекомендую это как первый текст, хотя; Это тяжело.

Обе эти книги высокого уровня. Они выиграли'

14
ответ дан 3 December 2019 в 14:25
поделиться

Specifically for the Python part of your question I can highly recommend http://www.diveintopython3.net/ by Mark Pilgrim. That's free and pretty well structured.

Python is a nice choice, you will have fun!

9
ответ дан 3 December 2019 в 14:25
поделиться

http://www.pythonchallenge.com/

Я думаю, что это испытание идеально подходит для знакомства с основными сильными сторонами Python, и есть хороший форум с множеством интересных тем Python за каждый уровень.

5
ответ дан 3 December 2019 в 14:25
поделиться

Python is a high-level language, so it wouldn't give you much direct benefit to learn how computers operate at the lowest levels.

Don't get me wrong - I do strongly believe that the low-level operation of a computer, e.g. assembly language and hardware, is something that every good programmer should be familiar with, because it does help you program more effectively in whatever language you are using, high-level or low-level. But it won't make much of a difference in your Python coding until you've gotten quite a bit of experience. If you're just starting out with Python, I would suggest staying away from the low-level operation of computers and concentrating on the basics of Python for now. Once you're comfortable with that, you can move on to something like C and then it might be appropriate to start looking at some lower-level stuff.

As for what you should know... not much, I guess. Python is a great language to start out programming in. It keeps simple things simple but it's rich enough to let you work your way up to a high level of complexity. I'd suggest probably looking at a tutorial; the one I happen to know is on the Python website, but I'm not claiming it's necessarily the best one for you. A Google search should give you plenty to get started with.

1
ответ дан 3 December 2019 в 14:25
поделиться

расширить мои знания о компьютерах

Ну, что вы именно подразумеваете под этим? Python или любой другой язык высокого уровня предназначен для того, чтобы скрыть все неприятные детали. Это одна из причин, почему он подходит для не профессионалов, таких как (например, ученый).

Если вы хотите знать, как на самом деле работают вещи, вы должны выучить чистый C. Но опять же, если вы не планируете иметь какую-либо карьеру, связанную с SC, в этом нет особого смысла. Вместо этого изучите более продвинутые алгоритмы и структуры данных. Это сделает вас более интересным, полезным и независимым от платформы и языка.

0
ответ дан 3 December 2019 в 14:25
поделиться

Многое зависит от того, какова ваша общая цель для изучения Python. Вы рассматриваете это как изучение второго языка или более глубокое понимание компьютеров и как эффективно использовать язык программирования?

Судя по всему, вы хотите лучше понять компьютеры и стать лучшим программистом. Изучение новых языков, таких как Python, вероятно, не поможет вам в этом отношении. Я все еще рекомендую изучать Python, если вам интересно, но как только вы выучите один язык программирования, большая часть изучения нового языка знакомится с синтаксисом и типами данных (обычно).

Вы упомянули, что не уверены в понимании материала в классе, который вы взяли. Если вы чувствуете, что не Если вы не понимаете фундаментальные понятия (такие как циклы, классы и т. д.), то изучение Python поможет вам понять программирование, поскольку большинство книг / руководств пересматривают эти понятия ( Изучение Python, 3-е издание должно помочь в этом). Если вы понимаете эти концепции, но не знаете, как применять эти концепции, я рекомендую узнать о структурах данных и общих алгоритмах (например, сортировка, поиск и т. Д.).

Если говорить о личном опыте, я не знал, как применить то, что я узнал из вводного урока программирования, к проектам личного программирования. Изучение структур данных из класса помогло закрепить те концепции, которые я изучил ранее, предоставив алгоритмы / структуры данных, основанные на этих предыдущих знаниях. Этот класс также позволил мне по-другому взглянуть на проблемы с точки зрения использования этих структур данных.

Чтобы узнать о различных типах структур данных, см .: http://en.wikipedia.org/wiki/List_of_data_structures . Обычно каждая структура данных полезна для определенной цели (например, двоичные деревья поиска хороши для поиска отсортированной информации). К сожалению, у меня нет рекомендаций по книгам (наш класс не использовал книгу). Поиск в Google «структур данных» должен стать хорошей отправной точкой.

Структуры данных также заставили меня задуматься о том, насколько эффективна реализация. «Сложность» алгоритма определяет, сколько времени занимает выполнение данного фрагмента кода. Это позволяет легко сравнивать другие реализации и определять, что лучше.

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

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

Если вы еще учитесь в школе, возьмите класс структур данных и посмотрите, что вы о нем думаете. Если вам это нравится, я бы посоветовал пересмотреть роль программирования / CS в вашей карьере. Вы не должны специализироваться в этом, но рассмотрите несовершеннолетнего или, по крайней мере, должность, которая использует эти навыки, которые вы изучаете. Я говорю это потому, что, несмотря на то, что это не ваша основная задача, вам интересно понять, как работает компьютер, и предпринять инициативы, такие как изучение Python, создание собственного компьютера и установка Linux.

Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать. Удачи!

но подумайте о несовершеннолетнем или, по крайней мере, о позиции, которая использует эти навыки, которые вы изучаете. Я говорю это потому, что, несмотря на то, что это не ваша основная задача, вам интересно понять, как работает компьютер, и предпринять инициативы, такие как изучение Python, создание собственного компьютера и установка Linux.

Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать. Удачи!

но подумайте о несовершеннолетнем или, по крайней мере, о позиции, которая использует эти навыки, которые вы изучаете. Я говорю это потому, что, несмотря на то, что это не ваша основная задача, вам интересно понять, как работает компьютер, и предпринять инициативы, такие как изучение Python, создание собственного компьютера и установка Linux.

Если у вас есть дополнительные вопросы, не стесняйтесь спрашивать. Удачи!

3
ответ дан 3 December 2019 в 14:25
поделиться

Короткий ответ: все из них

Длинный ответ:

Изучение вашего первого языка всегда является проблемой, и после вашего опыта Java многие другие языки будут казаться намного проще. Тем не менее, настоящей проблемой в изучении языков программирования является изучение того, когда использовать определенный язык - вы можете найти приличные документы для всего, что вы выберете, когда придет время.

В качестве конкретного начала перейдите к Википедии и просмотрите их категорический список языков программирования , щелкните по всем именам, которые вы когда-либо слышали (и все остальное, что бросается в глаза), и если в статье есть пример кода, дайте ему минуту или две, чтобы погрузиться (остальная часть статьи, конечно, поможет). Суть здесь не в том, чтобы овладеть каждым отдельным языком (который (1) бессмыслен и (2) невозможен), а в том, чтобы понять, что там есть. Для любого языка есть несколько других подобных ему языков, и если вы сможете хотя бы прочитать один язык в большинстве этих категорий, вы освоите довольно большую часть вселенной программирования. Когда появляется новый проект, и что-то в нем напоминает вам какой-то язык, который вы нашли, вы можете просто выучить этот язык как часть проекта. Это может звучать как большая работа, но после, скажем, вашего пятого большого языка вы полностью теряете счет и просто случайно изучаете новые все время, не замечая этого.

Когда вы перестаете относиться к одному языку как к своему родному языку , ты' Вы сможете учиться на примерах на других языках, даже если вы никогда не программировали на них. Лично я написал только несколько программ на Haskell, но возможность читать Haskell открыла для меня множество идей, которые я мог бы использовать в более практичных программах Scala и Python (о, да, после того, как вы изучите Python, дай Scala обзор, и ты, вероятно, никогда больше не будешь использовать Java).

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

Требуется много лет, чтобы прийти к тому, что ни один язык программирования не является полностью иностранным (или, по крайней мере, иностранным для более чем одного дня хакерства), но я думаю, что это очень здоровый и реалистичный долгосрочный план, чтобы попытаться покорить репрезентативную выборку каждой грубой категории. Удачи!

0
ответ дан 3 December 2019 в 14:25
поделиться

Я бы предложил посмотреть онлайн-книгу по адресу http://www.diveintopython.org/ , чтобы изучить Python.

Что касается проектов Python, я бы попробовал изучение Django Framework. Это основа для создания веб-приложений. У них есть отличный учебник для начала работы с ним. Это также даст вам опыт создания веб-сервера на Linux-машине.

1
ответ дан 3 December 2019 в 14:25
поделиться

Так как Python не был моим первым языком, я нашел кулинарную книгу Python полезной для изучения

  1. На что способен Python
  2. Идиоматический, «питонский» , "способ что-то сделать.
0
ответ дан 3 December 2019 в 14:25
поделиться

Я начал Python (как свой первый язык программирования) несколько месяцев назад. Я бы порекомендовал для начала Изучение Python Марка Лутца . Но имейте в виду, что ключ к хорошему обучению - это быть открытым, терпеливым и готовым работать и искать то, чего вы не понимаете.

Удачи!

1
ответ дан 3 December 2019 в 14:25
поделиться

Обучение языку программирования всегда ассоциировалось с клише во время обучения. «Пишите программы для изучения программирования». Я бы тоже предложил то же самое.

Если вы собираетесь начать с основ. Это, конечно, наиболее рекомендуемая отправная точка. Это долго, но всегда стоит того. http://www.diveintopython.org/

Поскольку вы уже знакомы с Java, это может быть даже лучше для вас. http://www.swaroopch.com/notes/Python . Запустите python 2.x или 3.0. Я лично являюсь поклонником python 3. Но для начала может быть сложно найти образцы и ссылки на программы в Интернете. Так что для вас 2.x может быть лучше. Но я оставляю это на ваше усмотрение.

Как я начал "Пишите программы ...". Вы можете начать здесь.

  1. http://www.spoj.pl/ - сайт, посвященный проблемам программирования, где вы можете выбирать из множества тем, в основном алгоритмов, и имеет огромную базу данных вопросов. Конечно, выбор языков программирования остается за вами.
  2. http://projecteuler.net/ - сайт математических вопросов, здесь вам просто нужно отправить ответ, здесь разрешено мошенничество, так что не стесняйтесь брать логика от других, но попробуйте написать программу самостоятельно.

После того, как вы считаете, что приобрели достаточный уровень владения Python, вы можете попробовать рецепты из этой книги. Поваренная книга Python http://www.amazon.com/Python-Cookbook -Alex-Martelli / dp / 0596007973 .

Если вы считаете, что сможете справиться с этим, начните с wxPython или PyQt для разработки приложений. Лично я бы посоветовал PyQt. Он отзывчивый, быстрый и имеет приличный цикл разработки, я давно не использовал WxPython, но несколько программ, которые я написал давным-давно, были не такими уж хорошими. И снова дело за вами.

0
ответ дан 3 December 2019 в 14:25
поделиться
Другие вопросы по тегам:

Похожие вопросы: