Изучите Python 3: основы Python в 7 задачах кодирования

основы Python в 7 задачах кодирования Изучение

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

Сегодня мы проведем вас через практическое руководство, основанное на задачах, которое поможет вам быстро начать работу с Python!

Почему обучение, основанное на задачах?

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

Чтобы избежать недостатков книжного обучения, многие предпочли бы учиться, исследуя код Python с помощью практических ускоренных курсов, основанных на задачах. Этот метод отлично подходит для практических учеников, потому что он позволяет абсолютным новичкам изучить как теорию, так и практический вариант использования каждой базовой концепции или алгоритма.

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

1. Hello World

Начнем с основной головоломки, в которой используется эта print()функция.

print(‘hello world’)

Эта print()функция позволяет вам подключить вашу программу к внешнему миру. Эта функция, как видно из названия, выводит значение на стандартный вывод.

Вы можете думать о стандартном выводе как о среде, в которой живет ваша программа Python. Ваш стандартный выход — это воздух вокруг вас. Допустим, вы кричите «Ой!» Каждый человек в вашем окружении может прочитать из стандартного вывода, что вы только что испытали боль. Данные, которые выводятся на стандартный вывод, имеют строковый тип данных.

Строка — это последовательность символов.

Вы можете определить строку в Python любым из следующих способов:

  • Одиночные кавычки ( ’hello world’)
  • Двойные кавычки ( «hello world»)
  • Тройная цитата ( ’’’hello world’’’и «„„hello world““»)

В головоломке мы используем одинарную кавычку для определения нашей строки.

2. Variables

Теперь мы познакомимся с понятиями переменных и деления с плавающей запятой.

x = 55 / 11
print(x)

Головоломка преследует две цели. Во-первых, он вводит понятие переменных. Python оценивает результат выражения в правой части уравнения и сохраняет его в переменной x. После определения переменной вы можете получить к ней доступ в любой точке программного кода.

Во-вторых, это заставляет вас внимательно читать код из-за одной особенности: операции деления всегда возвращают число с плавающей запятой. Таким образом, переменная xхранит значение с плавающей запятой 5.0. Функция печати выводит результат в виде числа с плавающей запятой, а не в виде целого числа 5.

Это источник большинства ошибок в коде. Люди слишком много внимания уделяют тому, что они имеют в виду (семантика), и слишком мало — тому, как они это говорят (синтаксис).

Совет : Программы всегда выполняют инструкции в соответствии с синтаксисом, который может отличаться от того, что вы планировали. Главное — привыкнуть думать, как компьютер.

3. List

Эта головоломка представляет списки, нашу первую структуру данных в Python.

squares = [1, 4, 9, 16, 25]
print(squares[0])

Тип данных является «абстрактным», потому что вы можете использовать списки независимо от конкретных типов данных элементов списка. В большинстве сложных алгоритмов, которые вы изучите позже, в качестве строительного блока будут использоваться списки. Многие известные алгоритмы, такие как быстрая сортировка, основаны только на одном списке в качестве основной структуры данных.

Читайте также:  Глубокое погружение в API для начинающих: что такое API?

Питонический способ обработки списков и доступа к ним прост и понятен. Вы можете создать список, записав значения, разделенные запятыми, между открывающими и закрывающими квадратными скобками.

lst = [1, 4, 9, 16, 25] 

Вы iполучаете доступ к -ому элементу в списке lst с помощью интуитивно понятной скобочной записи lst[i]. Эта нотация согласована для всех составных типов данных, таких как строки и массивы.

4. Slicing

Теперь мы рассмотрим, как использовать срез и некоторые более сложные манипуляции с переменными.

word = «galaxy»
print(len(word[1:]))

Slicing

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

Идея нарезки проста. Используйте обозначение скобок для доступа к последовательности элементов, а не только к одному элементу. Вы делаете это с помощью двоеточия [start: end]. Это обозначение определяет начальный индекс (включенный) и конечный индекс (исключенный).

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

Для полноты картины быстро ознакомьтесь с расширенной нотацией нарезки [start:end:step]. Единственное отличие от предыдущей записи состоит в том, что она позволяет указать размер шага. Например, команда ’python’[:5:2]возвращает каждый второй символ до четвертого символа, т. Е. Строку pto.

len()

len()Функция представляет собой удобный инструмент, чтобы получить длину встроенных типов Python данных, такие как строки, списки, словари или кортежи.

5. Branching

Теперь мы переходим к более сложным задачам. В этой задаче мы познакомимся с ветвлением и условными операторами.

def if_confusion(
      x, y):
  if x > y:
    if x — 5 > 0:
      x=y
      return «A» if y == y + y else «B»
    elif x + y > 0:
      while x > y: x -= 1
      while y > x: y -= 1
      if x == y:
        return «E»
  else:
    if x — 2 > y — 4:
      x_old = x
      x=y*y
      y = 2 * x_old
      if (x — 4) ** 2 > (y — 7) ** 2:
        return «C»
      return «D»
    return «F»
print(if_confusion(3, 7))

Как и любой другой язык программирования, Python также имеет условные операторы, также известные как ветвящиеся операторы. Для создания веток вы можете использовать ключевые слова if, else или elif. Эти операторы возвращают логические значения, trueесли условие выполнено, а falseесли нет.

Совет : компьютер не выполняет код строго сверху вниз, и вам тоже не следует этого делать.

Вместо этого начните с того места, где начинается выполнение программы, то есть внизу с вызовом функции if_confusion(3, 7). Теперь вы знаете, что x=3и y=7. Затем вы продолжаете делать то, что делает интерпретатор.

Поскольку x>yэто false, вы можете пропустить всю верхнюю часть функции. Точно так же вы можете пропустить ветку if для x-2>y-4.

Читайте также:  Изучение Raspberry Pi: лучшие ресурсы Raspberry Pi в Интернете

6. For loop

Теперь, когда мы видели whileцикл, мы узнаем о forциклах.

words = [‘cat’, ‘mouse’]
for word in words:
    print(len(word))

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

Оператор цикла for в Python — это способ избавиться от избыточного кода. В forцикле вы пишете код один раз и помещаете его в разные контексты.

Среди ингредиентов, которые делают язык программирования мощным, — операторы потока управления. Цикл for Python является одним из таких операторов потока управления. Он повторяет выполнение тела кода для всех элементов последовательности, выполняя итерацию по всем элементам в порядке следования. Это похоже на forEachцикл в Java или JavaScript.

В головоломке переменное слово сначала принимает значение cat, а затем — значение mouse. Затем мы распечатываем длину каждого слова.

7. Functions

В качестве последней задачи мы рассмотрим фундаментальную концепцию программирования: функции.

def func(
        x):
    return x + 1
f = func
print(f(2) + func(2))

Функция инкапсулирует последовательность программных инструкций. Идеальная функция решает единственную цель высокого уровня.

Например, вы можете инкапсулировать задачу поиска в Интернете определенных ключевых слов в именованную функцию. Это позволяет вам вызывать поиск позже, используя всего одну инструкцию.

Функции позволяют вам написать код один раз и повторно использовать его позже или в других программах. Повторное использование кода более эффективно, чем написание одного и того же кода каждый раз. Предположим, вы хотите вычислить квадратный корень из 145. Вы можете вычислить его для конкретного значения 145 или определить функцию, которая вычисляет квадратный корень для любого значения x.

Определение функции

Вы можете определить функцию с помощью ключевого слова def, за которым следует имя и аргументы функции. Интерпретатор Python поддерживает таблицу символов, в которой хранятся все определения функций, т. Е. Сопоставления имен функций с объектами функций.

Это позволяет интерпретатору связывать каждое вхождение имени функции с определенным объектом функции. Один объект функции может иметь ноль, одно или даже несколько имен.

В головоломке мы присваиваем объекту функции имя, funcа затем переназначаем его на новое имя f. Затем мы можем использовать оба имени для ссылки на один и тот же код.

После вызова функции интерпретатор Python найдет функцию в таблице символов и выполнит ее. Это может сделать ваш код более читабельным при вызове одной и той же функции в разных контекстах.

Что изучать дальше

Теперь, когда вы выполнили эти 7 задач, у вас есть опыт программирования с основными строительными блоками большинства программ Python 3. Переход на новый язык может быть трудным, но знайте, что вы делаете большие инвестиции в свое образование. Python — лучший язык общего назначения, используемый сегодня, и сейчас самое время начать изучать Python!

По мере того, как вы продолжаете свое путешествие, чтобы стать программистом на Python, ищите проекты Python с такими концепциями, как:

  • Объектно-ориентированное программирование (ООП) с наследованием классов Python
  • Стандартная библиотека Python
  • Реализация с популярными сторонними технологиями, такими как Django или Pandas
  • Расширенный синтаксис Python 3, такой как операторы Lambda и Continue
Оцените статью
bestprogrammer.ru
Добавить комментарий