Архив рубрики: Python

Как использовать конструкцию if в Python при работе с Data Science

Python для Data Science: использование конструкции if в Python

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

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

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

Синтаксис конструкции if

Оператор if предназначен для выполнения определенного кода в зависимости от условия, которое проверяется.

Синтаксис оператора if выглядит следующим образом:

if условие:

блок кода

Условие – это выражение, которое должно быть истинным или ложным.

Код в блоке будет выполнен только тогда, когда условие будет верно (True).

Если условие не выполнено (False), то блок кода будет пропущен.

Для добавления альтернативного блока кода, который будет выполнен, когда условие – ложное, можно использовать оператор else:

if условие:

блок кода

else:

альтернативный блок кода

Также можно использовать несколько условий с операторами elif (от else if), чтобы проверить несколько возможных вариантов:

if условие1:

блок кода1

elif условие2:

блок кода2

elif условие3:

блок кода3

else:

альтернативный блок кода

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

Основные правила оформления кода

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

  • Отступы должны быть одинаковыми и состоять из 4 пробелов. Это облегчит чтение и восприятие кода.
  • Длина строки не должна превышать 79 символов. Слишком длинные строки могут свести на нет структуру кода и ухудшить его читаемость. Если строка длиннее, то ее можно разбить на несколько строк при помощи кавычек.
  • Используйте пустые строки для разделения блоков кода. Это позволит легче читать и анализировать код.
  • Имена переменных, функций и классов должны быть описательными и понятными. Это облегчит понимание кода как вашим коллегам, так и вам в будущем.
  • Избегайте использования «магических чисел». Вместо этого, используйте константы для лучшей читаемости кода.

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

Примеры использования конструкции if

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

Например, мы можем создать код, который позволяет проверить, является ли число четным или нечетным:

number = 5

if number % 2 == 0:

print("Число четное")

else:

print("Число нечетное")

В данном примере, если число делится на 2 без остатка, то выводится сообщение “Число четное”, в противном случае – “Число нечетное”.

Еще одним примером использования конструкции if является проверка наличия элемента в списке:

fruits = ["яблоко", "банан", "киви"]

if "яблоко" in fruits:

print("Есть яблоко!")

В данном примере, если в списке “fruits” есть элемент “яблоко”, выводится сообщение “Есть яблоко!”.

Также, можно использовать вложенные конструкции if для проверки нескольких условий:

x = 10

if x > 5:

if x < 15:

print("Число находится в промежутке от 5 до 15")

В данном примере, если значение “x” больше 5 и меньше 15, выводится сообщение “Число находится в промежутке от 5 до 15”.

В таблице ниже представлены еще некоторые примеры использования конструкции if:

ПримерОписание
if len(words) > 10:Проверка на то, что длина списка “words” больше 10 элементов
if x == y and y != 0:Проверка на то, что значения “x” и “y” равны, но “y” не равно 0
if name == “John” or name == “Jane”:Проверка на то, что значение переменной “name” равно “John” или “Jane”

В целом, конструкция if является необходимой для работы с условиями и позволяет создавать более гибкие и управляемые программы.

Операторы сравнения в Python

Операторы сравнения в Python используются для сравнения значений двух переменных в условных выражениях. Они возвращают логический тип (True или False) в зависимости от результата сравнения.

В Python существует следующие операторы сравнения:

  • == (равно): проверяет равенство двух значений.
  • != (не равно): проверяет неравенство двух значений.
  • > (больше): проверяет, является ли первое значение большим, чем второе.
  • < (меньше): проверяет, является ли первое значение меньшим, чем второе.
  • >= (больше или равно): проверяет, является ли первое значение большим или равным второму.
  • <= (меньше или равно): проверяет, является ли первое значение меньшим или равным второму.

Кроме того, операторы сравнения могут использоваться вместе с логическими операторами (and, or, not), чтобы создать более сложные условия.

Список операторов сравнения

Операторы сравнения – это символы, которые используются для сравнения двух значений. В языке Python есть несколько операторов сравнения:

ОператорОписаниеПример
==Проверка на равенство5 == 5 # True
!=Проверка на неравенство5 != 3 # True
>Больше, чем6 > 3 # True
<Меньше, чем4 < 7 # True
>=Больше или равно6 >= 6 # True
<=Меньше или равно3 <= 5 # True

Важно помнить, что результатом оператора сравнения всегда является булево значение True или False.

Как использовать операторы сравнения в if

Как использовать операторы сравнения в if

Операторы сравнения в Python позволяют сравнивать значения и вычислять их булевое (логическое) значение, что часто используется в ситуациях, когда нужно проверить истинность какого-либо выражения. Для этого используются следующие операторы:

  • == — равно
  • != — не равно
  • > — больше
  • >= — больше или равно
  • < — меньше
  • <= — меньше или равно

Основной способ использования операторов сравнения в Python — их комбинирование с конструкцией if, которая позволяет выполнить блок кода только при выполнении определенного условия. Например, если нужно проверить, является ли число x положительным, можно написать такой код:

if x > 0:

print("Число %d является положительным" % x)

В случае, если условие не будет выполнено, блок кода, который следует за конструкцией if, просто будет пропущен. Если нужно выполнить какой-то код в случае не выполнения условия, то можно использовать конструкцию else или elif. Например:

if x > 0:

print("Число %d является положительным" % x)

elif x == 0:

print("Число %d равно нулю" % x)

else:

print("Число %d является отрицательным" % x)

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

Логические операторы в Python

В Python существуют три логических оператора: and, or, и not.

and объединяет два условия, возвращая True только если оба условия истинны. Например, x > 5 and x < 10 вернет True только если x больше 5 и меньше 10.

or также объединяет два условия, но возвращает True если хотя бы одно из условий истинно. Например, x < 5 or x > 10 вернет True если x меньше 5 или больше 10.

not инвертирует логическое значение условия. Например, not(x > 5) вернет True если x меньше или равен 5.

Логические операторы полезны при использовании конструкции if, чтобы проверять несколько условий одновременно. Например:

xyРезультат
510x < y: True
83x > 5 and y < 7: True
46x < 5 or y > 10: False
75not x < y: True

Таким образом, знание логических операторов помогает в написании более сложных и точных условий в Python.

Список логических операторов

Логический оператор – это символ или слово, которое определяет логическое отношение между двумя выражениями. Результат такой операции всегда является логическим значением (истина или ложь). В языке Python есть несколько логических операторов:

  • and – результат True, если оба операнда являются True, иначе результат False.
  • or – результат True, если хотя бы один из операндов является True, иначе результат False.
  • not – результат True, если операнд является False, иначе результат False.

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

Также в Python существуют сравнительные операторы, которые могут использоваться с логическими операторами:

ОператорОписание
==равно
!=не равно
<меньше
>больше
<=меньше или равно
>=больше или равно

Эти операторы могут использоваться, чтобы выполнять сравнения чисел или других типов данных. Результатом такой операции будет логическое значение – True или False.

Применение логических операторов в if

В языке Python для сравнения использовуются различные логические операторы:

  • == – проверка на равенство
  • != – проверка на неравенство
  • < – меньше
  • <= – меньше или равно
  • > – больше
  • >= – больше или равно

Эти операторы могут применяться в условиях конструкции if:

if x == 5:

print("x равно 5")

elif x > 5:

print("x больше 5")

else:

print("x меньше 5")

В этом примере, если переменная x равна 5, то выводится сообщение “x равно 5”. Если x больше 5, то выводится сообщение “x больше 5”. Если же x меньше 5, то выводится сообщение “x меньше 5”.

Также в конструкции if можно использовать логические операторы “and”, “or” и “not”:

if x > 5 and y < 10:

print("x больше 5 и y меньше 10")

if x > 5 or y < 10:

print("x больше 5 или y меньше 10")

if not x > 5:

print("x не больше 5")

В первом примере выводится сообщение “x больше 5 и y меньше 10”, если переменная x больше 5 и переменная y меньше 10. Во втором примере выводится сообщение “x больше 5 или y меньше 10”, если переменная x больше 5 или переменная y меньше 10. В третьем примере выводится сообщение “x не больше 5”, если переменная x меньше или равна 5.

Вложенные if

Структура управления if может содержать в себе так называемые вложенные условия. Это означает, что одно условие может быть вложено в другое. При этом, если условие, содержащее вложенное условие, истинно, то выполняется оператор, иначе происходит переход к следующему блоку кода. Это очень удобно в условиях, когда необходимо проверять несколько вариантов или выполнение условия зависит от более чем одного параметра.

Например, мы хотим проверить, участник ли соревнования имеет определенный уровень знаний, а затем проверить его возраст. Если он имеет определенный уровень знаний, то ему не обязательно быть старше 18 лет, но если уровень знаний ниже, то возраст должен быть не младше 18 лет. Можно реализовать данный код вложенными условиями с помощью конструкции if:

  1. Если уровень знаний участника > 70:
    • Если возраст участника >= 18, то он может участвовать в соревновании.
    • Иначе, если возраст < 18, то он не имеет права участвовать.
  2. Иначе, если уровень знаний <= 70:
    • Если возраст участника >= 18, то он может участвовать в соревновании.
    • Иначе, если возраст < 18, то он не имеет права участвовать.

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

УсловиеРезультат
a > bTrue или False
c > dTrue или False
e > fTrue или False
if a > b and c > d:“условие выполнено”
 if e > f:

Синтаксис вложенного if

if – это условный оператор в Python, который используется для выполнения определенного блока кода, если указанное условие выполняется. Вложенный if – это конструкция, которая позволяет выполнить еще один блок кода, если условие внутри первого блока кода также выполняется.

Вложенный if имеет следующий синтаксис:

  1. Определение первого условия и блока кода для его выполнения
  2. В случае, если первое условие выполняется, можно написать второе условие и блок кода для его выполнения
  3. Второе условие также может содержать вложенный if
  4. Можно продолжать вкладывать условные блоки кода и if – по необходимости

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

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

Примеры использования вложенного if

Вложенный оператор if в Python позволяет создавать более сложные конструкции условий, когда необходимо проверить несколько условий для срабатывания одного из них. Рассмотрим несколько примеров использования вложенного оператора if:

Пример 1:

x = 5

if x > 0:

if x < 10:

print("x меньше 10 и больше 0")

В этом примере сначала проверяется, больше ли переменная x нуля. Если это условие выполнено, то при помощи вложенного оператора if проверяется, меньше ли переменная x 10. Если оба условия верны, то мы получим на выходе фразу “x меньше 10 и больше 0”.

Пример 2:

x = 20

if x > 10:

print("x больше 10")

else:

if x == 10:

print("x равен 10")

else:

print("x меньше 10")

В этом примере проверяется, больше ли переменная x 10. Если это верно, на выходе мы получим сообщение “x больше 10”. Если же переменная x меньше или равна 10, то произойдет переход к следующей вложенности else, где с помощью оператора if мы проверим, равна ли переменная x 10 или меньше 10.

Пример 3:

x = 12

if x > 0 and x < 10:

print("x меньше 10 и больше 0")

else:

print("x не удовлетворяет условию")

В этом примере проверяется, удовлетворяет ли переменная x условию, что она больше 0 и меньше 10. Если это верно, на выходе мы получим сообщение “x меньше 10 и больше 0”. В противном случае, на выходе мы получим сообщение “x не удовлетворяет условию”.

Вложенный оператор if в Python очень полезен, когда необходимо проверить несколько условий сразу. Однако, следует помнить, что слишком многие вложенности могут сделать код слишком сложным для чтения и понимания.

Оператор elif

Один из ключевых операторов в Python – это оператор условного ветвления if . Он позволяет выполнять различные инструкции в зависимости от условия. Однако, зачастую возникает необходимость проверять несколько условий и выполнять различные инструкции, если условия верны. В этом случае в Python используется оператор elif .

Конструкция оператора elif представляет собой комбинацию if и else . If позволяет проверить первое условие, и если оно ложно, то проверяется следующее условие с помощью оператора elif . Если ни одно из условий не верно, то выполняются инструкции после оператора else .

Пример использования оператора elif:

if temperature > 30:

print("It's too hot")

elif temperature < 10:

print("It's too cold")

else:

print("The temperature is comfortable")

В данном примере сначала проверяется условие на то, что температура выше 30 градусов. Если условие верно, то выводится сообщение “It’s too hot”. Если это условие ложно, проверяется следующее условие, что температура ниже 10 градусов. Если это условие верно, то выводится сообщение “It’s too cold”. Если и это условие ложно, то выполняются инструкции после оператора else , и выводится сообщение “The temperature is comfortable”.

Оператор elif позволяет выполнять более сложные и многоуровневые проверки условий в Python.

Синтаксис оператора elif

Оператор elif является частью условного оператора if и используется, когда необходимо проверить несколько условий. Если условие, заданное в операторе if, равно False, то выполняется блок кода, заданный в операторе elif.

Синтаксис оператора elif:

if условие1:

блок_кода1

elif условие2:

блок_кода2

elif условие3:

блок_кода3

else:

блок_кода4

Выполнение кода начинается с проверки первого условия в операторе if. Если это условие равно True, то выполняется блок_кода1. Если же это условие равно False, то переходим к проверке следующего условия в операторе elif. Если условие в elif также равно False, то переходим к следующему elif, и так далее. Если elif не хватает, и все условия равны False, то выполняется блок кода, заданный в операторе else.

Обратите внимание, что можно использовать любое количество операторов elif в одном условном операторе if. Но такое использование должно быть обдуманным, чтобы избежать увеличения времени выполнения программы.

Оператор elif может использоваться без операторов if и else, но это не является хорошей практикой. Например:

if x > 0:

print("Х - положительное число")

elif x == 0:

print("Х - ноль")

elif x < 0:

print("Х - отрицательное число")

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

Примеры использования оператора elif

Оператор elif используется для проверки нескольких условий. Если первое условие не выполняется, программа проверяет второе и так далее, пока не найдет подходящее. Рассмотрим несколько примеров использования оператора elif в Python.

  • Пример 1: Выбор действия в зависимости от времени суток.

“`python

hour = int(input(“Введите текущее время (часы): “))

if 6 <= hour < 12:

print(“Доброе утро!”)

elif 12 <= hour < 18:

print(“Добрый день!”)

elif 18 <= hour < 24:

print(“Добрый вечер!”)

else:

print(“Доброй ночи!”)

“`

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

  • Пример 2: Определение года по введенному номеру.

“`python

year = int(input(“Введите номер года: “))

if year % 4 == 0:

if year % 100 == 0:

if year % 400 == 0:

print(“Год високосный”)

else:

print(“Год не високосный”)

else:

print(“Год високосный”)

else:

print(“Год не високосный”)

“`

В данном примере программа определяет, является ли введенный год високосным.

  • Пример 3: Выбор действия в зависимости от значения переменной.

“`python

x = 5

if x > 0:

print(“Переменная x положительна”)

elif x < 0:

print(“Переменная x отрицательна”)

else:

print(“Переменная x равна нулю”)

“`

В данном примере программа проверяет значение переменной x и выводит сообщение о ее знаке.

Преимущества использования конструкции if для Data Science

Конструкция if является одной из наиболее базовых и важных конструкций в Python. В Data Science, использование if может значительно упростить процесс обработки больших объемов данных и сократить количество ошибок, которые могут быть допущены при анализе данных.

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

Преимущества использования конструкции if:

  • Упрощает обработку и анализ больших объемов данных;
  • Сокращает количество ошибок при анализе данных;
  • Легко фильтрует, группирует и анализирует данные;
  • Может быть использован в сочетании с другими конструкциями для создания более сложных программных конструкций;
  • Улучшает качество работы и экономит время.

Таким образом, использование конструкции if в Data Science – необходимое условие для успешного анализа и обработки данных. Она позволяет аналитикам и специалистам по данных создавать более эффективные и точные программы и алгоритмы, что является важным фактором в успехе работы в этой области.

Вопрос-ответ:

Как использовать конструкцию if для проверки наличия значения в списке?

Для проверки наличия значения в списке можно использовать конструкцию if в следующем виде: if значение in список: действия. Например, можно проверить, есть ли число 5 в списке [1, 2, 3, 4, 5]: if 5 in [1, 2, 3, 4, 5]: print(“Число 5 есть в списке”).

Как использовать конструкцию if для проверки длины строки?

Для проверки длины строки можно использовать конструкцию if в следующем виде: if len(строка) > длина: действия. Например, можно проверить, что длина строки “Python” больше 3: if len(“Python”) > 3: print(“Длина строки больше 3”).

Можно ли использовать конструкцию if для проверки на четность числа?

Да, можно использовать конструкцию if для проверки на четность числа. Для этого нужно проверить, что остаток от деления числа на 2 равен нулю: if число % 2 == 0: действия. Например, можно проверить, что число 4 является четным: if 4 % 2 == 0: print(“Число 4 четное”).

Как использовать конструкцию if для проверки на принадлежность интервалу?

Для проверки на принадлежность интервалу можно использовать конструкцию if в следующем виде: if нижняя_граница < число < верхняя_граница: действия. Например, можно проверить, что число 5 принадлежит интервалу [1, 10]: if 1 < 5 < 10: print("Число 5 принадлежит интервалу [1, 10]").

Как использовать конструкцию if для проверки на наличие символа в строке?

Для проверки на наличие символа в строке можно использовать конструкцию if в следующем виде: if символ in строка: действия. Например, можно проверить, что символ “a” есть в строке “Python”: if “a” in “Python”: print(“Символ ‘a’ есть в строке ‘Python’”).

Можно ли использовать конструкцию if для проверки на равенство строк?

Да, можно использовать конструкцию if для проверки на равенство строк. Для этого нужно использовать оператор сравнения “==” в следующем виде: if строка1 == строка2: действия. Например, можно проверить, что строки “Python” и “python” не равны: if “Python” == “python”: print(“Строки ‘Python’ и ‘python’ равны”).

Видео:

#17. Условный оператор if. Конструкция if-else | Python для начинающих

#17. Условный оператор if. Конструкция if-else | Python для начинающих by selfedu 1 year ago 16 minutes 45,129 views

#18. Вложенные условия и множественный выбор. Конструкция if-elif-else | Python для начинающих

#18. Вложенные условия и множественный выбор. Конструкция if-elif-else | Python для начинающих by selfedu 1 year ago 16 minutes 37,007 views

Сообщение Как использовать конструкцию if в Python при работе с Data Science появились сначала на Программирование на Python.

HTTP Сервер на базе Python для передачи файлов

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

Читать

Python — переводчик Google, Bing и etc.

Для автоматизации работы с taobao я столкнулся с необходимостью перевода с китайского на русский. С этим отлично справилась библиотека translators. Читать

Python — как подключиться к базе данных MySQL на хостинге

Для работы с MySQL в Python используется библиотека pymysql. Но чтобы подключиться с локальной машины к базе данных, которая расположена на сервере, используем библиотеку sshtunnel.

По сути – мы сначала подключаемся к хостингу через защищённое соединение, а уже через это соединение подключаемся к базе данных.

Перед подключением убедитесь, что на хостинге разрешен доступ по SSH. Читать

PyCharm — как активировать виртуальное окружение в терминале по-умолчанию

Для этого нужно изменить терминал по-умолчанию с Power shell на CMD.

  1. File -> Settings -> Tools -> Terminal
  2. Измените значение Shell Path на C:Windowssystem32cmd.exe
  3. Включите чекбокс Activate virtualenv
  4. Нажмите apply и запустите терминал заново

Сообщение PyCharm — как активировать виртуальное окружение в терминале по-умолчанию появились сначала на Веб-студия Юсота.


Source: usota.ru python

Как настроить VPS для запуска скриптов Python

В статье рассмотрим пошаговую настройку сервера на примере VPS на Beget. Если сервера у вас ещё нет, посмотрите раздел регистрация на хостинге и аренда сервера.

Настройка сервера

Проверяем, что сервер запущен и доступы пришли на почту.

Панель управления в личном кабинете

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

Шаг 1 — Вход с привилегиями root

Чтобы войти на сервер, вам нужно знать публичный IP-адрес вашего сервера. Также вам потребуется пароль или, если вы установили ключ SSH для аутентификации, приватный ключ для учетной записи root user. Если вы еще не выполнили вход на сервер, вы можете воспользоваться инструкцией, как настроить ключи SSH в Ubuntu 22.04, которая подробно описывает этот процесс.

Если вы еще не подключились к серверу, выполните вход в систему как root user, используя следующую команду (замените выделенную часть команды на публичный IP-адрес вашего сервера):

$ ssh root@your_server_ip

Примите предупреждение об аутентичности хоста, если оно появится на экране. Если вы используете аутентификацию по паролю, укажите пароль root для входа в систему. Если вы используете ключ SSH с защитой по фразе-паролю, вам может быть предложено ввести фразу-пароль в первый раз при использовании ключа в каждом сеансе. Если вы первый раз выполняете вход на сервер с помощью пароля, вам также может быть предложено изменить пароль root.

Подробнее о root

root user — это пользователь с правами администратора в среде Linux, который имеет очень широкий набор привилегий. Из-за такого широкого набора привилегий учетной записи root не рекомендуется использовать ее на регулярной основе. Это связано с тем, что часть возможностей, получаемых с помощью учетной записи root, включает возможность внесения очень разрушительных изменений, даже если это происходит непреднамеренно.

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

Шаг 2 — Создание нового пользователя

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

Этот пример создает нового пользователя с именем sammy, но вы должны заменить это имя на имя, которое вам нравится:

# adduser sammy

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

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

Шаг 3 — Предоставление административных прав

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

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

Чтобы добавить эти права для нового пользователя, нам нужно добавить пользователя в группу sudo. По умолчанию в Ubuntu 22.04 пользователи, входящие в группу sudo могут использовать команду sudo.

Используя права root, запустите эту команду, чтобы добавить нового пользователя в группу sudo (замените выделенное имя пользователя на нового пользователя):

# usermod -aG sudo sammy

Теперь, когда вы войдете в систему со стандартным пользователем, вы можете ввести sudo перед командами для выполнения действий с правами суперпользователя.

Шаг 4 — Настройка базового брандмауэра

Серверы Ubuntu 22.04 могут использовать брандмауэр UFW для проверки, что подключения разрешены только к определенным службам. Мы можем легко настроить базовый брандмауэр с помощью приложения.

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

Чтобы увидеть это, можно ввести следующую команду:

# ufw app list
Available applications:
  OpenSSH

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

# ufw allow OpenSSH

После этого мы можем активировать брандмауэр с помощью следующей команды:

# ufw enable

Введите y и нажмите ENTER, чтобы продолжить. Чтобы увидеть, что подключения SSH разрешены, введите следующее:

# ufw status
Status: active

To                         Action      From
--                         ------      ----
OpenSSH                    ALLOW       Anywhere
OpenSSH (v6)               ALLOW       Anywhere (v6)

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

Шаг 5 — Активация внешнего доступа для стандартного пользователя

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

Примечание

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

Процесс настройки доступа SSH для нового пользователя зависит от того, использует ли учетная запись с правами root на сервере пароль или ключи SSH для аутентификации.

Если учетная запись root использует аутентификацию по паролю

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

$ ssh sammy@your_server_ip

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

$ sudo command_to_run

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

Если учетная запись root использует аутентификацию по ключу SSH

Если вы выполнили вход в учетную запись root с помощью ключей SSH, тогда аутентификация по паролю для SSH отключена. Вам потребуется добавить копию локального открытого ключа в файл ~/.ssh/authorized_keys нового пользователя для успешного входа.

Поскольку ваш открытый ключ уже включен в файл ~/.ssh/authorized_keys учетной записи root на сервере, мы можем скопировать структуру этого файла и директории для нашей новой учетной записи в существующем сеансе.

Самый простой способ копирования файлов с правильным правами владения и разрешениями — воспользоваться командой rsync. Она будет копировать директорию .ssh пользователя root user, сохранит разрешения и изменит владельцев файлов, все в одной команде. Обязательно измените выделенные ниже части согласно имени вашего стандартного пользователя:

Примечание

Команда rsync использует источники и пункты назначения, оканчивающиеся на завершающий слеш, иначе, чем те, которые этот завершающий слеш не имеют. При использовании rsync ниже убедитесь, что директория источника (~/.ssh) не включает завершающий слеш (убедитесь, что вы не используете ~/.ssh/​​​).

Если вы случайно добавите в команду завершающий слеш, rsync будет копировать содержимое директории ~/.ssh учетной записи root в домашнюю директорию пользователя sudo вместо копирования всей структуры директории ~/.ssh. Файлы будут находиться в неправильном месте, и SSH не сможет найти и использовать их.

# rsync --archive --chown=sammy:sammy ~/.ssh /home/sammy

Теперь откройте новый сеанс терминала на локальном компьютере и используйте SSH с вашим новым именем пользователя:

$ ssh sammy@your_server_ip

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

$ sudo command_to_run

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

Регистрация на хостинге

Рекомендую Beget — бюджетный и с адекватной службой поддержки. Работаю с ними с 2015 года.

Переходим на страницу выбора хостинга и выбираем любой тариф с операционной системой Ubuntu. В нашем примере выберем сервер с двух-ядерным процессором.

Выбор конфигурации сервера

Если вы ещё не зарегистрированы в Beget, появится окно регистрации.

Окно регистрации на сайте Beget

Пополните баланс минимум на 22 рубля, чтобы арендовать сервер.

Панель меню в личном кабинете Beget

Если средств на балансе достаточно, автоматически откроется раздел “Облако”, где мы можем ещё раз подтвердить выбор характеристик сервера, а также задать пароль и название сервера.

Создание сервера

Жмём “Создать виртуальный сервер” и ждём письмо с доступом к серверу на почту.

Назад к настрокам сервера

Сообщение Как настроить VPS для запуска скриптов Python появились сначала на Веб-студия Юсота.


Source: usota.ru python