Какие типы данных в Python ты знаешь?

«Какие типы данных в Python ты знаешь?» — вопрос из категории Python, который задают на 35% собеседований AQA / Automation. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

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

  1. Числовые:
    • int (целые числа, например 42)
    • float (числа с плавающей точкой, например 3.14)
    • complex (комплексные числа, например 1+2j)
  2. Последовательности:
    • str (строки, например "hello")
    • list (изменяемые списки, например [1, 2, 3])
    • tuple (неизменяемые кортежи, например (1, 2, 3))
  3. Множества:
    • set (изменяемое множество, например {1, 2, 3})
    • frozenset (неизменяемое множество)
  4. Отображения:
    • dict (словари, например {"key": "value"})
  5. Булевы:
    • bool (True или False)
  6. Бинарные:
    • bytes (например b"hello")
    • bytearray
    • memoryview

Почему это важно для тестирования? Понимание типов данных критично для валидации ответов API, проверки граничных значений и написания корректных проверок (assert). Например, при тестировании API важно убедиться, что поле, описанное в документации как integer, действительно возвращается как int, а не как строка.

Пример проверки типа в тесте:

import requests

def test_api_response_data_types():
    response = requests.get("https://api.example.com/users/1")
    user_data = response.json()

    # Проверяем, что ID — целое число
    assert isinstance(user_data['id'], int), f"Expected 'id' to be int, got {type(user_data['id'])}"
    # Проверяем, что имя — строка
    assert isinstance(user_data['name'], str), f"Expected 'name' to be str, got {type(user_data['name'])}"

Видео-ответы