wayground logo

Free Printable Worksheets

Font size

S
M
L
XL
Worksheets

Eπανάλη python-pygame

Total questions: 30

Worksheet time: 15mins

Name
Class
Date
1.

Ποιος είναι ο βασικός σκοπός μιας κλάσης (class) στην Python;

a)

Να λειτουργεί ως προσχέδιο (blueprint) για τη δημιουργία αντικειμένων.

b)

Να αντικαταστήσει τις λίστες και τα λεξικά.

c)

Να χρησιμεύει μόνο για την εισαγωγή βιβλιοθηκών.

d)

Να επιταχύνει την εκτέλεση του κώδικα στο CPU.

2.

Ποια μέθοδος χρησιμοποιείται στην Python για την αρχικοποίηση των πεδίων ενός αντικειμένου κατά τη δημιουργία του;

a)

new()

b)

start

c)

init

d)

create()

3.

Τι αντιπροσωπεύει η παράμετρος ‘self’ στις μεθόδους μιας κλάσης;

a)

Μια καθολική μεταβλητή (global variable).

b)

Το ίδιο το στιγμιότυπο (instance) του αντικειμένου.

c)

Μια εντολή που τερματίζει το πρόγραμμα.

d)

Το όνομα της κλάσης.

4.

Ποια από τις παρακάτω έννοιες επιτρέπει σε μια κλάση να κληρονομήσει χαρακτηριστικά από μια άλλη;

a)

Ενθυλάκωση (Encapsulation)

b)

Κληρονομικότητα (Inheritance)

c)

Υπερφόρτωση (Overloading)

d)

Αφαίρεση (Abstraction)

5.

Τι είναι ο πολυμορφισμός (polymorphism);

a)

Η χρήση πολλών CPU για την εκτέλεση μιας συνάρτησης

b)

Η αποθήκευση πολλών κλάσεων στο ίδιο αρχείο .py

c)

Η ικανότητα μιας μεταβλητής να αλλάζει τύπο δεδομένων (π.χ. από int σε string)

d)

Η δυνατότητα διαφορετικών κλάσεων να χρησιμοποιούν το ίδιο όνομα μεθόδου με διαφορετική υλοποίηση

6.

Πως επιτυγχάνεται η ενθυλάκωση (encapsulation) στην Python για την προστασία πεδίων;

a)

Με την χρήση διπλής κάτω παύλας (__) πριν από το όνομα της μεταβλητής

b)

Δεν υποστηρίζεται ενθυλάκωση στην Python

c)

Με το κλείδωμα του αρχείου κώδικα με κωδικό

d)

Με την χρήση της λέξης κλειδιού private πριν από κάθε μεταβλητή

7.

Τι ορίζουμε ως “Υπερφόρτωση Τελεστών’ (Operator Overloading);

a)

Τη χρήση πολλών τελεστών στην ίδια γραμμή κώδικα

b)

Την αύξηση της ταχύτητας των μαθηματικών πράξεων

c)

Την κατάργηση των τελεστών από τη γλώσσα

d)

Τον ορισμό νέας συμπεριφοράς για τελεστές (π.χ. +,-) όταν χρησιμοποιούνται με αντικείμενα κλάσεων

8.

Ποιο μπλοκ κώδικα χρησιμοποιείται για τη διαχείριση εξαιρέσεων (exceptions) στην Python;

a)

if…else

b)

begin…end

c)

error…catch

d)

try…except

9.

Ποια βιβλιοθήκη είναι η πιο διαδεδομένη για τη δημιουργία παιχνιδιών 2D στην Python;

a)

Django

b)

Pygame

c)

Pandas

d)

Matplotlib

10.

Ποια εντολή είναι απαραίτητη για την αρχικοποίηση της Pygame στην αρχή του κώδικα;

a)

import pygame.all

b)

pygame.start()

c)

pygame.init()

11.

Τι ονομάζουμε “Game Loop” στον προγραμματισμό παιχνιδιών;

a)

Την κίνηση του χαρακτήρα γύρω από τον εαυτό του

b)

Έναν ατέρμονα βρόχο που διαχειρίζεται εισόδους, ενημερώνει την κατάσταση και σχεδιάζει στην οθόνη

c)

Την εγκατάσταση του παιχνιδιού στον υπολογιστή

d)

Μια επανάληψη που εκτελείται μόνο όταν ο παίκτης χάνει

12.

Ποια μέθοδος της Pygame χρησιμοποιείται για την εμφάνιση των αλλαγών στην οθόνη (update display);

a)

pygame.display.flip()

b)

pygame.render()

d)

pygame.screen.refresh()

13.

Πως διαχειριζόμαστε το κλείσιμο του παραθύρου στην Pygame;

a)

Δεν μπορούμε να κλείσουμε το παράθυρο με κώδικα

b)

Το παράθυρο κλείνει αυτόματα ‘όταν τελειώσει ο κώδικας

c)

Ελέγχοντας αν ο τύπος του συμβάντος (event.type) είναι ίσος με pygame.QUIT

d)

Κλείνοντας τον υπολογιστή

14.

Ποια κλάση της Pygame χρησιμοποιείται συχνά για την αναπαράσταση αντικειμένων του παιχνιδιού (π.χ. παίκτης, εχθρός);

a)

pygame.Draw.Item

b)

pygame.sprite.Sprite

c)

pygame.Object

d)

pygame.GameElement

15.

Τι κάνει η μέθοδος “collidirect” στην Pygame;

a)

Αλλάζει το χρώμα ενός ορθογωνίου

b)

Σχεδιάζει ένα ορθογώνιο στην οθόνη

c)

Διαγράφει ένα αντικείμενο από τη μνήμη

d)

Ελέγχει αν δυο ορθογώνια (Rect) επικαλύπτονται (σύγκρουση)

16.

Πως ορίζεται μια υποκλάση (subclass) “Dog” που κληρονομεί από την κλάση “Animal”;

a)

def Dog(Animal):

b)

class Dog inherits Animal:

c)

class Dog extends Animal:

d)

class Dog(Animal):

17.

Τι είναι η “Υπερκάλυψη Μεθόδου” (Method Overriding);

a)

Όταν μια υποκλάση παρέχει μια νέα υλοποίηση για μια μέθοδο που υπάρχει ήδη στην κλάση - γονέα

b)

Η χρήση της ίδιας μεθόδου σε διαφορετικά αρχεία

c)

Η κλήση μιας μεθόδου πάρα πολλές φορές

d)

Η διαγραφή μιας μεθόδου από τον προγραμματιστή

18.

Ποια είναι η χρήση της συνάρτησης super();

a)

Να κάνει την εφαρμογή να τρέχει πιο γρήγορα (super speed)

b)

Να τερματίσει την τρέχουσα κλάση

c)

Να δώσει πρόσβαση σε μεθόδους της κλάσης – γονέα από την υποκλάση

d)

Να ορίσει μια κλάση ως “ανώτερη” από όλες τις άλλες

19.

Στην Pygame, τι αντιπροσωπεύει ένα αντικείμενο τύπου Surface;

a)

Το πληκτρολόγιο

b)

Την επιφάνεια του γραφείου του χρήστη

c)

Μια ορθογώνια εικόνα ή το ίδιο το παράθυρο του παιχνιδιού όπου μπορούμε να σχεδιάσουμε

d)

Την ταχύτητα κίνησης ενός αντικειμένου

20.

Ποια μέθοδος χρησιμοποιείται για να “αντιγράψουμε” (σχεδιάσουμε) ένα Surface πάνω σε ένα άλλο (π.χ. παίκτη πάνω στην οθόνη);

a)

copy()

b)

paste()

c)

draw()

d)

blit()

21.

Πως μπορούμε να ελέγξουμε αν ένα συγκεκριμένο πλήκτρο (π.χ. το βέλος πάνω) είναι πατημένο στην Pygame;

a)

Δεν μπορούμε να ελέγξουμε το πληκτρολόγιο

b)

Χρησιμοποιώντας την συνάρτηση pygame.key.get_pressed()

c)

Με την εντολή check_keys()

d)

Ρωτώντας τον χρήστη με την input()

22.

Ποιο είναι το σύστημα συντεταγμένων στην Pygame;

a)

Το (0,0) είναι στην πάνω αριστερή γωνία

b)

Το (0,0) είναι στο κέντρο της οθόνης

c)

Δεν υπάρχουν συντεταγμένες

d)

Το (0,0) είναι στην κάτω δεξιά γωνία

23.

Τι προσφέρει η χρήση “Groups” (ομάδων) για τα Sprites στην Pygame;

a)

Κάνει τα Sprites να φαίνονται πιο όμορφα

b)

Επιτρέπει την ομαδική ενημέρωση (update) και σχεδίαση (draw) πολλών αντικειμένων μαζί

c)

Αλλάζει τη γλώσσα προγραμματισμού σε C++

d)

Χρησιμοποιείται μόνο για τη σύνδεση στο διαδίκτυο

24.

Ποιο αντικείμενο της Pygame χρησιμοποιείται για τον έλεγχο του ρυθμού ανανέωσης (FPS);

a)

pygame.FPS._Control

b)

time.sleep()

c)

pygame.time.Clock

d)

pygame.Timer

25.

Πως μπορούμε να προσθέσουμε ήχο στο παρασκήνιο (background music) που επαναλαμβάνεται συνεχώς;

a)

Φωνάζοντας στο μικρόφωνο

b)

Δεν υποστηρίζεται ήχος στην Pygame

c)

Με την εντολή sound.repeat()

26.

Τι είναι μια “εξαίρεση” (exception);

a)

Ένα σφάλμα που συμβαίνει κατά την εκτέλεση του προγράμματος (runtime error)

b)

Ένας κανόνας που ισχύει μόνο για κάποιους παίκτες

c)

Μια πολύ γρήγορη συνάρτηση

d)

Ένα σχόλιο στον κώδικα

27.

Ποια από τις παρακάτω είναι μια έγκυρη τεχνική “καθαρής” κωδικοποίησης (safe techniques) στον OOP;

a)

Η χρήση μεθόδων getter και setter για την πρόσβαση σε ιδιωτικά δεδομένα

b)

Η άμεση τροποποίηση όλων των πεδίων από οποιαδήποτε συνάρτηση

c)

Η αποφυγή χρήσης κλάσεων

d)

Η χρήση μόνο καθολικών (global) μεταβλητών

28.

Ποια εντολή στην Pygame φορτώνει μια εικόνα από το δίσκο;

a)

pygame.get_picture()

b)

import picture

c)

pygame.image.load(‘file.png’)

d)

open(‘file.png’)

29.

Τι είναι το “Blitting” στην ορολογία των γραφικών;

a)

Η μετατροπή του κώδικα Python σε Java

b)

Η σύνδεση δυο υπολογιστών

c)

Η μεταφορά των bit μιας εικόνας σε μια άλλη επιφάνεια

d)

Η διαγραφή της μνήμης RAM

30.

Ποιο είναι το πλεονέκτημα της χρήσης της βιβλιοθήκης Pygame σε σχέση με την απλή Python για παιχνίδια;

a)

Καταργεί την ανάγκη για χρήση μεταβλητών

b)

Είναι η μόνη βιβλιοθήκη που υπάρχει για Python

c)

Κάνει την Python να μην χρειάζεται εγκατάσταση

d)

Παρέχει έτοιμες λειτουργίες για γραφικά, ήχο και διαχείριση συμβάντων (πληκτρολόγιο/ποντίκι)