Основы Flashcards

1
Q

В честь чего или кого назван Python?

A

В честь шоу “Монти Пайтон”

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

Когда появился язык программирования Python?

A

В начале 90х годов.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

Сколько версий у Пайтона?

A

Всего у Пайтона три версии и актуальна сейчас третья.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Какая версия Пайтона сейчас актуальна/последняя

A

Третья

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Можно ли в функции print() выводить несколько параметров?

A

Да, можно. Но их нужно разделять запятой:

print(“1”, “2”, “3”)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Какие именованные параметры есть у функции print()?

A

sep - разделитель
end - что будет печататься в конце.

print(1, 2, 3, 4, sep=’ + ‘, end=’’)

По умолчанию разделитель - это пробел, а end - перевод строки

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Какой знак обозначает целочисленное деление?

A

//

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Какой знак обозначает возведение в степень?

A

**

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Какой знак обозначает остаток от деления?

A

%

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

Можно ли в Пайтоне складывать числа со строкой?

A

Нет, нельзя. Нужно воспользоваться функцией str() приведения числа к строке.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Можно ли в Пайтоне умножать строки на числа?

A

Да, можно умножить строку на число

print(‘abc’ * 3)
Res: abcabcabc

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Можно ли в Пайтона умножать строки на строки?

A

Нет, нельзя

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Какая в Пайтоне функция ввода?

A

input()

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

Что такое логический тип данных?

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

Какие типы данных в Пайтоне неизменяемы?

A

Строки, целые числа и переменные логического типа.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Что значит, что логический тип данных неизменяем?

A

Это значит, что в памяти лежат 2 объекта - True и False и все переменные ссылаются на один из них

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

У какие операций приоритет выше? у сравнений или логических операций?

A

Приоритет логических операций ниже, чем приоритет сравнений.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

Какие приоритеты у логических операций?

A

Самый высокий приоритет у “not” (отрицания), затем идет “and” (и), и самый низкий приоритет у “or”(или)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

Конструкция, которая обозначает “иначе, если”, и после которой записывается условие.

A

“elif”

Пример:

number = int(input())
if number == 1:
    print('One')
elif number == 2:
    print('Two')
else:
    print('Other')
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
20
Q

Сколько конструкций elif? и как они работают?

A

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

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
21
Q

Какой должен быть отступ у else в конструкции условного оператора?

A

Такой же, как и у if, к которому он относится.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
22
Q

Инструкция для прерывания цикла

A

break, после нее выполнение цикла прекращается.

Использование break - плохой тон, по возможности, нужно обходится без него.

23
Q

Можно ли в Пайтоне после цикла while написать блок else? как это будет работать?

A

Да можно. Команды в блоке else будут выполняться в том случае, если цикл завершился нормальным образом и не будут выполняться, если цикл завершился через break.

24
Q

Команда continue в цикле

A

Позволяет начать выполнение цикла заново, с проверки. Т.е после этой команды остаток текущей итерации цикла не выполняется.

25
Q

Что такое функция?

A

Это часть программы, которую можно вызвать с различными параметрами

26
Q

Зачем нужны функции?

A
  1. Для повторяющихся действий с различными параметрами

2. Для структурирования кода

27
Q

С помощью какой команды в Пайтон создается функция?

A
def название:
    // код
28
Q

Может ли функция Пайтона возвращать несколько значений?

A

Да, может. Принимаем мы их через запятую

def sort2(a, b):
    if a < b:
        return a, b
    else:
        return b, a
a = int(input())
b = int(input())

minimum, maximum = sort2(a, b)
print(minimum, maximum)

29
Q

Глобальные переменные.

A

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

30
Q

Что будет после выполнения этого кода?

def f():
    print(a)
    if False:
    a = 0

a = 1
f()

A

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

Ошибка об обращении к переменной до ее инициализации

31
Q

С помощью какой команды функция может изменять значение глобальной переменной?

A

global

Пример
def f():
    global a
    a = 1
32
Q

Что будет при выполнении кода:

def f():
    global a
    a = 1
    print(a, end=' ')

a = 0
f()
print(a)

A

Вывод 1, 1 т.к после команды global функция изменяет глобальную переменную.

33
Q

Какими переменными являются параметры функции?

A

Локальными

34
Q

Что такое рекурсия/рекурсивный вызов?

A

Это вызов функции самой себя

35
Q

Что позволяет хранить тип “кортеж”?

A

“кортеж” позволяет хранить произвольные элементы

36
Q

Каким типом данных является кортеж и почему?

A

Кортеж - это неизменяемый тип данных т.к нельзя менять отдельные элементы кортежа.

37
Q

Как можно создать кортеж?

A

Записывая элементы через запятую и окружая скобками

а = (1, 2, 3)

38
Q

Действия с кортежами

A
  1. Сложение

2. Умножение на число (результат как и у строк)

39
Q

Какой результат?

1, 2) + (3, 4

A

(1, 2, 3, 4) т.к это сложение кортежей

40
Q

Какой результат?

1, 2 + 3, 4

A

(1, 5, 4), т. к. сумма будет понята Питоном как выражение для второго элемента кортежа.

41
Q

Каким образом можно получить кортеж из строки?

A

Вызвав функцию tuple от строки.

42
Q

Каким образом из кортежа можно получить строку?

A

Вызвав функцию str от кортежа

43
Q

Как узнать длину кортежа?

A

Вызвав функцию len

44
Q

Можно ли обращаться к элементам кортежа по индексам?

A

Да, можно. В том числе и по отрицательному

45
Q

Как можно создать кортеж из 1 элемента?

A

После этого элемента создать запятую

а = (2, )

46
Q

Какие элементы могут хранится в одном кортеже?

A

Различные

47
Q

Что такое синглтон?

A

Кортеж, в котором хранится один элемент

48
Q

Что такое распаковка кортежа?

A

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

manDesc = (“Ivan”, “Ivanov”, 28)
name, surname, age = manDesc

49
Q

Что такое упаковка кортежа?

A

Это процесс создания кортежа

a, b, c = 1, 2, 3 - упаковка
a, b, c = c, b, a - распаковка

50
Q

Функция range и ее параметры

A

Позволяет генерировать объекты типа iterable (к элементам которых можно получать последовательный доступ), состоящие из целых чисел.
range(from, to, step),

51
Q

Что такое список?

A

Список это набор ссылок на объекты (также, как и кортежи), однако он является изменяемым.

52
Q

Можно ли преобразовать список в кортеж и кортеж в список?

A

Да можно. Функциями list, tuple

53
Q

Можно ли из строки сделать список?

A

Да, применением к строке функции list