Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Industrial programming >> Python

Мастерство Python вопросов для собеседования — ваш полный руководство по подготовке

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

Базовые вопросы по Python для собеседования

Что такое Python?

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

Назовите некоторые особенности Python.

Ниже приведены некоторые выдающиеся особенности Python:

Является ли Python языком с учетом регистра?

Да, Python — язык с учетом регистра. Это означает, что идентификаторы, имена функций и ключевые слова должны различаться на основе капитализации. Учет регистра также помогает поддерживать ясность и точность в коде.

Является ли Python платформо-независимым?

Да, Python платформо-независимен. Код Python запускается в любой операционной системе с совместимым интерпретатором. Код Python выполняется интерпретатором, который абстрагирует аппаратное обеспечение и операционную систему в деталях.

Каковы области применения Python?

Ниже приведены области применения Python:

В чем основное различие между Python 2 и Python 3?

Таблица ниже объясняет разницу между Python 2 и Python 3.

№РазделPython 2Python 3
1Функция PrintКоманда print можно использовать без скобок.Python 3 требует скобки для печати любой строки. Вызовет ошибку без скобок.
2UnicodeASCII str() типы и отдельный Unicode(), но нет байтового типа кода в Python 2.Unicode (utf-8) и два байтовых класса: Byte, Bytearray.
3ИсключенияPython 2 принимает как новые, так и старые нотации синтаксиса.Python 3 вызывает SyntaxError, когда аргумент исключения не заключен в скобки.
4Сравнение неупорядочиваемыхНе вызывает ошибку.Вызывает TypeError как предупреждение при попытке сравнить неупорядочиваемые типы.

Есть ли в Python тип данных double?

Нет, в Python нет типа данных double. Python использует тип float для чисел с плавающей точкой, определяющий двойную точность по умолчанию.

Строки в Python неизменяемы? (Да/Нет)

Да, строки в Python неизменяемы.

Может ли True = False быть возможным в Python?

Нет, True не может быть равно False в Python. В Python True и False — разные булевы значения.

Вопросы по переменным окружения Python

Какова цель переменной окружения PYTHONPATH?

PYTHONPATH — играет роль, аналогичную PATH. Эта переменная говорит интерпретатору Python, где находить файлы модулей, импортируемые в программу. Она должна включать директорию исходной библиотеки Python и директории, содержащие исходный код Python. PYTHONPATH иногда предустанавливается установщиком Python.

Какова цель переменной окружения PYTHONSTARTUP?

PYTHONSTARTUP — содержит путь к файлу инициализации, содержащему исходный код Python. Он выполняется каждый раз при запуске интерпретатора. Называется .pythonrc.py в Unix и содержит команды, загружающие утилиты или модифицирующие PYTHONPATH.

Какова цель переменной окружения PYTHONCASEOK?

PYTHONCASEOK — используется в Windows для инструктирования Python находить первое нечувствительное к регистру совпадение в операторе import. Установите эту переменную в любое значение для активации.

Какова цель переменной окружения PYTHONHOME?

PYTHONHOME — альтернативный путь поиска модулей. Обычно встроен в директории PYTHONSTARTUP или PYTHONPATH для облегчения переключения библиотек модулей.

Вопросы по типам данных и операциям Python

Какие типы данных поддерживаются в Python?

В Python пять стандартных типов данных:

Что выведет print str, если str = 'Hello World!'?

Присваивание Hello world строке.

str = "Hello World!"
print(str)

Вывод

Hello World!

Что выведет print str[0], если str = 'Hello World!'?

Здесь индексация начинается с 0 в Python.

str = 'Hello World!'
print(str[0])

Вывод

H

Что выведет print str[2:5], если str = 'Hello World!'?

str = 'Hello World!'
print(str[2:5])

Вывод

llo

Что выведет print str[2:], если str = 'Hello World!'?

str = 'Hello World!'
print(str[2:])

Вывод

llo World!

Что выведет print str * 2, если str = 'Hello World!'?

str = 'Hello World!'
print(str * 2)

Вывод

Hello World!Hello World!

Что выведет print str + "TEST", если str = 'Hello World!'?

str = 'Hello World!'
print(str + "TEST")

Вывод

Hello World!TEST

Что выведет print list, если list = ['abcd', 786, 2.23, 'john', 70.2]?

list = ['abcd', 786, 2.23, 'john', 70.2]
print(list)

Вывод

['abcd', 786, 2.23, 'john', 70.2]

Что выведет print list[0], если list = ['abcd', 786, 2.23, 'john', 70.2]?

list = ['abcd', 786, 2.23, 'john', 70.2]
print(list[0])

Вывод

abcd

Что выведет print list[1:3], если list = ['abcd', 786, 2.23, 'john', 70.2]?

list = ['abcd', 786, 2.23, 'john', 70.2]
print(list[1:3])

Вывод

[786, 2.23]

Что выведет print list[2:], если list = ['abcd', 786, 2.23, 'john', 70.2]?

list = ['abcd', 786, 2.23, 'john', 70.2]
print(list[2:])

Вывод

[2.23, 'john', 70.2]

Что выведет print tinylist * 2, если tinylist = [123, 'john']?

tinylist = [123, 'john']
print(tinylist * 2)

Вывод

[123, 'john', 123, 'john']

Что выведет print list1 + list2, если list1 = ['abcd', 786, 2.23, 'john', 70.2] и list2 = [123, 'john']?

list1 = ['abcd', 786, 2.23, 'john', 70.2]
list2 = [123, 'john']
print(list1 + list2)

Вывод

['abcd', 786, 2.23, 'john', 70.2, 123, 'john']

Вопросы по кортежам Python

Что такое кортежи в Python?

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

В чем разница между кортежами и списками в Python?

Основные различия между списками и кортежами: списки заключены в квадратные скобки ([ ]) и их элементы и размер могут меняться, в то время как кортежи заключены в круглые скобки (( )) и не могут быть обновлены. Кортежи можно рассматривать как списки только для чтения.

Что выведет print tuple, если tuple = ('abcd', 786, 2.23, 'john', 70.2)?

tuple = ('abcd', 786, 2.23, 'john', 70.2)
print(tuple)

Вывод

('abcd', 786, 2.23, 'john', 70.2)

Что выведет print tuple[0], если tuple = ('abcd', 786, 2.23, 'john', 70.2)?

tuple = ('abcd', 786, 2.23, 'john', 70.2)
print(tuple[0])

Вывод

abcd

Что выведет print tuple[1:3], если tuple = ('abcd', 786, 2.23, 'john', 70.2)?

tuple = ('abcd', 786, 2.23, 'john', 70.2)
print(tuple[1:3])

Вывод

(786, 2.23)

Что выведет print tuple[2:], если tuple = ('abcd', 786, 2.23, 'john', 70.2)?

tuple = ('abcd', 786, 2.23, 'john', 70.2)
print(tuple[2:])

Вывод

(2.23, 'john', 70.2)

Что выведет print tinytuple * 2, если tinytuple = (123, 'john')?

tinytuple = (123, 'john')
print(tinytuple *2)

Вывод

(123, 'john', 123, 'john')

Что выведет print tuple + tinytuple, если tuple = ('abcd', 786, 2.23, 'john', 70.2) и tinytuple = (123, 'john')?

tuple = ('abcd', 786, 2.23, 'john', 70.2)
tinytuple = (123, 'john')
print(tuple + tinytuple)

Вывод

('abcd', 786, 2.23, 'john', 70.2, 123, 'john')

Вопросы по словарям Python

Что такое словари Python?

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

Как создать словарь в Python?

Словари заключены в фигурные скобки ({ }) и значения могут быть назначены и доступны с помощью квадратных скобок ([]).

dict = {}
dict['one'] = "This is one"
dict[2] = "This is two"
tinydict = {'name': 'john','code':6734, 'dept': 'sales'}

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

Используя функцию dictionary.keys(), мы можем получить все ключи из объекта словаря.

print dict.keys() # Выводит все ключи

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

Используя функцию dictionary.values(), мы можем получить все значения из объекта словаря.

print dict.values() # Выводит все значения

Вопросы по строкам Python

Как преобразовать строку в int в Python?

Для преобразования строки в целое число в Python мы используем функцию 'int()'. Строка должна представлять валидное целое число, иначе возникает ValueError.

Как преобразовать строку в float в Python?

float() — преобразует строку в float, где строка должна быть числовым значением.

Как преобразовать объект в строку в Python?

str(x) — преобразует объект в строку.

Как преобразовать объект в регулярное выражение в Python?

repr(x) — преобразует объект x в строковое выражение.

Как преобразовать строку в объект в Python?

eval(str) — вычисляет строку и возвращает объект.

Как преобразовать строку в кортеж в Python?

tuple(str) — преобразует строку в кортеж.

tuple('Hello')

Вывод

('H', 'e', 'l', 'l', 'o')

Как преобразовать строку в список в Python?

list(str) — преобразует строку в список.

print(list('Hello'))

Вывод

['H', 'e', 'l', 'l', 'o']

Как преобразовать строку в множество в Python?

set(str) — преобразует строку в множество, и если есть дублирующиеся элементы, они будут удалены.

print(set('Hello'))

Вывод

{'e', 'o', 'H', 'l'}

Как создать словарь, используя кортежи в Python?

dict(zip(tup1,tup2)) — преобразует кортежи в словарь. Функция zip() используется для парного объединения кортежей, а dict() конвертирует в словарь.

tup1 = ('a', 'b', 'c', 'd')
tup2 = (1, 2, 3, 4)
dic = dict(zip(tup1,tup2))
print(dic)

Вывод

{'a': 1, 'b': 2, 'c': 3, 'd': 4}

Как сделать первую букву строки заглавной?

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

str1 = "tutorialspoint"
print(str1.capitalize())

Вывод

Tutorialspoint

Как проверить, все ли символы в строке алфавитно-цифровые?

isalnum() — возвращает True, если строка имеет хотя бы 1 символ и все символы алфавитно-цифровые, и False в противном случае.

Как проверить, все ли символы в строке цифры?

isdigit() — возвращает True, если строка содержит только цифры, и False в противном случае.

Как проверить, все ли символы в строке строчные?

islower() — возвращает True, если строка имеет хотя бы 1 символ с регистром и все символы с регистром в нижнем регистре, и False в противном случае.

Как проверить, все ли символы в строке числовые?

isnumeric() — возвращает True, если строка Unicode содержит только числовые символы, и False в противном случае.

Как проверить, все ли символы в строке пробелы?

isspace() — возвращает True, если строка содержит только символы пробела, и False в противном случае.

Как проверить, правильно ли строка оформлена в title case?

istitle() — возвращает True, если строка правильно "titlecased", и False в противном случае.

Как проверить, все ли символы в строке заглавные?

isupper() — возвращает True, если строка имеет хотя бы один символ с регистром и все символы с регистром в верхнем регистре, и False в противном случае.

Как объединить элементы в последовательности?

join(seq) — объединяет (конкатенирует) строковые представления элементов в последовательности seq в строку с разделительной строкой.

Как получить длину строки?

len(string) — возвращает длину строки.

Как получить строку с пробелами, где исходная строка выровнена по левому краю до общей ширины колонок?

(width[, fillchar]) — возвращает строку с пробелами, где исходная строка выровнена по левому краю до общей ширины колонок.

Как преобразовать строку в нижний регистр?

lower() — преобразует все заглавные буквы в строке в строчные.

Как удалить все ведущие пробелы в строке?

lstrip() — удаляет все ведущие пробелы в строке.

Как получить максимальный алфавитный символ из строки?

max(str) — возвращает максимальный алфавитный символ из строки str.

Как получить минимальный алфавитный символ из строки?

min(str) — возвращает минимальный алфавитный символ из строки str.

Как заменить все вхождения старой подстроки в строке на новую?

replace(): этот метод заменит каждое вхождение старой подстроки на новую подстроку во всей строке.

str1 = "Welcome to tutorialspoint "
new_str = str1.replace("Welcome",'Hello Welcome')
print(new_str)

Вывод

Hello Welcome to tutorialspoint

Как удалить все ведущие и конечные пробелы в строке?

strip() — этот метод возвращает новую строку со всеми ведущими (пробелами в начале) и конечными (пробелами в конце) пробелами удаленными.

str1 = " Welcome to tutorialspoint "
Str = str1.strip()
print(Str)

Вывод

Welcome to tutorialspoint

Как изменить регистр всех букв в строке?

Как получить версию строки в title case?

title() — используется для капитализации первой буквы каждого слова строки.

Как преобразовать строку в верхний регистр?

upper() — используется для преобразования всех букв строки в верхний регистр.

Как проверить, все ли символы в строке десятичные?

isdecimal() — возвращает True, если строка Unicode содержит только десятичные символы, и False в противном случае.

Вопросы по спискам Python

В чем разница между методами del() и remove() списка?

Методы del() и remove() оба используются для удаления элемента из списка. del() используется для удаления элемента по указанному индексу. Он также может удалять несколько элементов с помощью операций срезов. Например, метод remove() списка используется для удаления первого вхождения элемента.

List = [1,2,3,4,5,6]
# удаление элемента
del List[1]
# удаление с использованием среза
del List[2:3]
# удаление 5
List.remove(5)
print(List)

Вывод

[1, 3, 6]

Что выведет len([1, 2, 3])?

Функция len() возвращает длину списка. (Вывод: 3)

Что выведет [1, 2, 3] + [4, 5, 6]?

[1, 2, 3, 4, 5, 6]

Что выведет ['Hi!'] * 4?

['Hi!', 'Hi!', 'Hi!', 'Hi!']

Что выведет 3 in [1, 2, 3]?

True

Что выведет for x in [1, 2, 3]: print x?

1 2 3

Что выведет L[2], если L = [1,2,3]?

3

Что выведет L[-2], если L = [1,2,3]?

2

Что выведет L[1:], если L = [1,2,3]?

[2, 3]

Как сравнить два списка?

Для сравнения двух списков нужно использовать равенство [ == ]. Если оба списка содержат одинаковые значения, вернется True; иначе False.

list1=[1,2,3,4]
list2=[1,2,3,4]
print(list1==list2)

Вывод

True

Как получить длину списка?

Используя функцию len() мы можем найти длину списка.

list1 = [1,2,3,4,5]
print(len(list1))

Вывод

5

Как получить элемент с максимальным значением в списке?

Используя функцию max() мы можем найти максимальный элемент списка.

list1 = [10, 20, 30, 40, 50]
print(max(list1))

Вывод

50

Как получить элемент с минимальным значением в списке?

Используя функцию min() мы можем найти минимальный элемент списка.

list1 = [10, 20, 30, 40, 50]
print(min(list1))

Вывод

10

Как получить индекс объекта в списке?

Используя функцию index() мы можем получить индекс элемента.

list1 = [10, 20, 30, 40, 50]
print(list1.index(30))

Вывод

2

Как вставить объект по заданному индексу в списке?

Функция insert() используется для вставки элемента по конкретному индексу. Она принимает индекс-значение и объект как параметры.

list1 = ['a', 'b', 'c', 'd','e']
list1.insert(3,'z')

Вывод

['a', 'b', 'c', 'z', 'd', 'e']

Как удалить последний объект из списка?

Функция pop() используется для удаления последнего объекта из списка. Мы также можем передать индекс как аргумент, и он вернет объект по этому конкретному индексу.

list1 = ['a', 'b', 'c', 'd','e']
list1.pop()
list1.pop(2)
print(list1)

Вывод

['a', 'b', 'd']

Как удалить объект из списка?

Используя remove(), del() и pop() мы можем удалить элемент из списка.

list1 = ['a', 'b', 'c', 'd','e']
list1.pop()
list1.pop(2)
print(list1)

Вывод

['a', 'b', 'd']

Как перевернуть список?

Функция reverse() используется для переворота списка. Используя срезы списка [::-1] мы также можем перевернуть список.

list1 = ['a', 'b', 'c', 'd','e']
print(list1.reverse())
list2 = [1,2,3,4,5]
rev=list2[::-1]
print(rev)

Вывод

['e', 'd', 'c', 'b', 'a']
[5, 4, 3, 2, 1]

Как отсортировать список?

Используя функцию sort() для упорядочивания элементов списка в определенном порядке. По умолчанию она упорядочивает элементы в порядке возрастания. Для упорядочивания в порядке убывания можно перевернуть отсортированный список с помощью функции reverse().

list1 = [13,10,45,9,5,12]
list1.sort()
print(list1)

Вывод

[5, 9, 10, 12, 13, 45]

Вопросы по операторам Python

Какова цель оператора **?

Оператор ** используется для выполнения операций возведения в степень, где число используется для возведения в степень другого числа. Например, 2**3 означает 2 в степени 3.

Какова цель оператора //?

Оператор // используется для выполнения целочисленного деления (floor division). Он делит два числа и возвращает наибольшее целое значение, меньшее или равное результату деления.

print(9//5)

Вывод

1

Какова цель оператора is?

Оператор is в Python используется для проверки, ссылаются ли две переменные на один и тот же объект в памяти. Он сравнивает идентичность объектов, а не их значения.

Какова цель оператора not in?

Оператор not in в Python используется для проверки, отсутствует ли конкретный элемент в последовательности, такой как список, кортеж, строка или словарь. Если элемент не найден, оператор возвращает True; иначе False.

Вопросы по управляющим конструкциям Python

Какова цель оператора break в Python?

Оператор break используется для прекращения выполнения цикла, когда выполняется определенное условие. После выполнения break цикл немедленно останавливается, и программа продолжается со следующего оператора после цикла.

Какова цель оператора continue в Python?

Оператор continue в Python используется для пропуска остальной части кода внутри цикла для текущей итерации и перехода непосредственно к следующей итерации цикла. В отличие от break, который прекращает цикл полностью, continue только пропускает до следующей итерации без завершения цикла.

Какова цель оператора pass в Python?

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

Вопросы по модулю random Python

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

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

Как выбрать случайный элемент из диапазона?

Для выбора случайного элемента из диапазона в Python мы используем функцию random.choice(). Она возвращает случайно выбранный элемент из диапазона 'start' до 'stop - 1'. Это также выберет случайное число из указанного диапазона.

Как получить случайное число в Python?

random() — возвращает случайное число с плавающей точкой r, такое что 0 ≤ r < 1.

Как установить начальное значение для генерации случайных чисел?

seed([x]) — устанавливает целое начальное значение, используемое в генерации случайных чисел. Вызовите эту функцию перед вызовом любой другой функции модуля random. Возвращает None.

Как рандомизировать элементы списка на месте?

shuffle(lst) — рандомизирует элементы списка на месте. Возвращает None.

Вопросы по функциям и памяти Python

Что такое lambda-функция в Python?

'lambda' — ключевое слово в Python, создающее анонимную функцию. Lambda не содержит блоков операторов. Не содержит операторов return.

Как называется функция, которая является неполной версией функции?

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

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

Область памяти, где параметры и локальные переменные сохраняются при определении функции, называется стек (stack). Здесь стек управляет вызовами функций, хранит переменные и возвращает адрес конкретного файла.

Вопросы по модулям и библиотекам Python

Какой модуль Python используется для применения методов, связанных с ОС?

Модуль OS в Python используется для взаимодействия с операционной системой. Он обеспечивает манипуляцию файлами и директориями, управление процессами, переменными окружения, позволяя Python-скриптам выполнять задачи, связанные с ОС, на разных платформах.

Назовите библиотеку Python, используемую для машинного обучения.

Библиотека 'scikit-learn' в Python используется для машинного обучения.

Назовите инструменты, которые Python использует для поиска багов (если есть).

Python использует несколько инструментов для поиска багов:

Python

  1. Мастерство работы с файлами в Python: создание, чтение, запись и открытие текстовых файлов
  2. Запуск Python-скриптов: подробное пошаговое руководство
  3. Принудительное указание минимальной версии Python в скрипте
  4. Печать в Python без перевода строки: мастерство параметра end и другие техники
  5. Списки в Python: Полное руководство по созданию, методам и операциям
  6. Python против JavaScript: ключевые отличия, особенности и выбор языка
  7. Настройка среды разработки Python: Полное руководство по установке
  8. Подробное руководство по операторам Python: арифметические, логические, сравнения, присваивания, битовые и прио…
  9. 6 эффективных способов вычислить квадрат числа в Python
  10. Импорт модулей в Python: практическое руководство с примерами