Фінальний тест

1

В якому з варіантів значення змінної result буде True?

  1. a = True
    b = True
    result = a and not b
  2. a = True
    b = True
    result = not a or not b
  3. a = True
    b = False
    result = a and not b
  4. a = False
    b = False
    result = a or b

2

В яких варіантах значення змінної result буде НЕ таке саме, як у коді нижче?

numbers = [1, 2, 3, 4]
result = []
for x in numbers:
   result.append(x * 2)
  1.  result = (x * 2 for x in numbers) 
  2.  result = [x * 2 for x in numbers] 
  3.  result = map(lambda x: x * 2, numbers) 
  4. def double(x):
        return 2 * x
    result = map(double, numbers)

3

Який з варіантів не видасть помилку, вважаючи, що задано тільки такий код:

product_prices = {
    'guitar': 699.99,
    'drum': 299.99
}
  1. for item, price in product_prices:
        print('{} ${}'.format(item, price))
  2. for item in product_prices:
        price = product_prices[item]
        print('{} ${}'.format(product_prices.quantity * price))
  3. print('{} ${}'.format(product_prices))
  4. for item, price in product_prices.items():
        print('{} ${}'.format(item, price))

4

Який з варіантів пройде тест, вважаючи, що задано тільки такий код:

class GameObject:

    def __init__(self, name, position=0, speed=5):
        self.name = name
        self.position = position
        self.speed = speed

    def update(self):
        self.position += self.speed

player = GameObject('player', position=10, speed=4)
ghost = GameObject('ghost')
  1. def update(game_objects):
        updated_objects = []
        for game_object in game_objects:
            updated_object = GameObject(game_object.name,
                                        game_object.position,
                                        game_object.speed)
            updated_object.update()
            updated_objects.append(updated_object)
        return updated_objects
    
    update([player, ghost])
    assert player.position == 14 and ghost.position == 5
  2. def update(*game_objects):
        for game_object in game_objects:
            game_object.update()
    
    update(player, ghost)
    assert player.position == 14 and ghost.position == 5
  3. def update(game_objects):
        for game_object in game_objects:
            game_object.update()
    
    update(player, ghost)
    assert player.position == 14 and ghost.position == 5
  4. def update():
        player.update()
        ghost.update()
    
    update(player)
    assert player.position == 14

5

Який з варіантів описує коректний вивід на екран після виконання такого коду:

class Logged:

    def __init__(self, class_name, **data):
        print('{} created'.format(class_name))
        for name, value in data.items():
            print(' - {}: {}'.format(name, value))

class Account(Logged):

    def __init__(self, name):
        self.name = name
        super().__init__('Account', name=name)

accounts = [Account('John'), Account('Jane')]
  1. Account created
     - name: John
    Account created
     - name: Jane
    
  2. Account created
    
  3. Account created
     - name: John
     - name: Jane
    
  4. {} created
    

6

Які команди треба виконати, щоб створити міграції для усіх наявних апок і оновити базу даних в Django 1.7?

  1. ./manage.py makemigrations
    ./manage.py migrate
    
  2. ./manage.py makemessages
    ./manage.py compilemessages
    
  3. ./manage.py migrate
    ./manage.py syncdb
    
  4. ./manage.py creatapp migrations
    ./manage.py migrate
    

7

Як, використовуючи Django QuerySet API, зробити запит до бази даних, і витягти ВСІ NewsArticle, створені 23.02.2014? Вважати, що модель NewsArticle задана таким чином:

from django.db import models

class NewsArticle(models.Model):
    title = models.CharField(max_length=500)
    content = models.TextField(max_length=10000)
    created_at = models.DateTimeField(auto_now_add=True)
  1. NewsArticle.objects.all(created_at = '2014-02-23')
  2. NewsArticle.objects.get(created_at = '2014-02-23')
  3. NewsArticle.objects.filter('2014-02-23')
  4. NewsArticle.objects.filter(created_at = '2014-02-23')

8

Які варіанти за допомогою Django QuerySet API роблять запит до бази даних і знаходять всі NewsArticle категорії queried_category? Вважати, що моделі NewsArticle і Category задані таким чином:

from django.db import models

class NewsArticle(models.Model):
    title = models.CharField(max_length=500)
    content = models.TextField(max_length=10000)
    created_at = models.DateTimeField(auto_now_add=True)
    category = models.ForeignKey('Category')

class Category(models.Model):
    name = models.CharField(max_length=500)
queried_category = Category.objects.get(pk=42)
  1. queried_category.newsarticles
  2. queried_category.newsarticle_set.all()
  3. NewsArticle.objects.filter(category=queried_category)
  4. queried_category.get_newsarticles()

9

Які URL-pattern підходять під адресу dashboard/orders/2015/03/?

  1. r'dashboard/orders/\d+/\d+/'
  2. r'dashboard/orders/2015/\d/'
  3. r'dashboard/orders/\d/\d/'
  4. r'dashboard/orders/(?P<year>\d{4})/(?P<month>\d{2})/'