Practice PCEP Computer Programming and Python Fundamentals questions with full explanations on every answer.
Start practicing
Computer Programming and Python Fundamentals — choose a session length
Free · No account required
Click any question to see the full explanation and answer options, or start a focused practice session above.
A developer writes a script that prompts the user for their age and stores it in a variable. Which code snippet correctly converts the input to an integer?
2Which of the following is the correct way to define a function that takes no arguments and returns the value 42?
3A program uses a variable named 'list' that shadows the built-in list type. Later, the code tries to create a new list using list([1,2,3]) but gets a TypeError. What is the most likely cause?
4A programmer writes: x = 5; y = 2; result = x / y. What is the type of result?
5Given the code: a = [1, 2, 3]; b = a; b.append(4). What is the value of a?
6Which of the following statements about Python indentation is true?
7A developer needs to iterate over the indices of a list named 'items' and print each index and its corresponding value. Which loop construct is most appropriate?
8What is the output of: print(2 ** 3 ** 2)?
9A student writes the code: x = 10; if x > 5: print("big"); else: print("small"). What is the output?
10Which TWO of the following are valid Python variable names? (Choose two.)
11Which THREE of the following are Python data types? (Choose three.)
12Which FOUR of the following are valid ways to create a list with elements 1, 2, 3? (Choose four.)
13What is the output?
14What is the output?
15A junior developer is working on a script that processes user data. The script reads a CSV file into a list of dictionaries. Each dictionary represents a user with keys 'name', 'age', and 'email'. The developer needs to filter out users under 18 and store their names in a list. The current code is: users = [{'name': 'Alice', 'age': 17, 'email': 'alice@example.com'}, {'name': 'Bob', 'age': 22, 'email': 'bob@example.com'}] minors = [] for user in users: if user['age'] < 18: minors.append(user['name']) print(minors) The code works, but the senior developer says it is not idiomatic and suggests a more concise solution. Which of the following approaches is the best replacement?
16A system administrator is writing a Python script to monitor disk usage. The script uses the psutil library (not part of PCEP scope, but the scenario is generic). The administrator writes: import psutil disk = psutil.disk_usage('/') print(disk.free) But the script fails with an ImportError because psutil is not installed. The administrator decides to handle this gracefully: if the module is missing, the script should print a custom error message and exit without crashing. Which code snippet achieves this?
17A developer writes a Python script that calculates the average of a list of numbers. The script sometimes produces a ZeroDivisionError. Which of the following is the MOST appropriate way to handle this error to keep the script running?
18A Python program is designed to process user input and store results in a dictionary. The code uses the statement: my_dict[user_key] = value. Under which condition will this statement raise a TypeError?
19A Python script contains the following line: x = 5. Later in the script, the programmer wants to check if x is an integer. Which of the following is the BEST way to perform this check?
20Which TWO of the following are valid Python variable names? (Choose two.)
21Which THREE of the following statements about Python data types are correct? (Choose three.)
22What is the output of the code in the exhibit?
23What is the output of the code in the exhibit?
24A programmer wants to iterate over a list of strings and print each string in uppercase. Which of the following code snippets will accomplish this?
25A Python script uses the following code to open a file: f = open('data.txt', 'w'). The programmer then writes multiple lines to the file. After writing, which of the following is the BEST practice to ensure data integrity?
26A junior developer is tasked with writing a Python script that reads a list of integers from a file, removes any duplicate numbers, and then writes the unique numbers back to the same file in ascending order. The file 'numbers.txt' currently contains one integer per line. The developer writes the following code: with open('numbers.txt', 'r') as f: numbers = [int(line.strip()) for line in f] unique = list(set(numbers)) unique.sort() with open('numbers.txt', 'w') as f: for num in unique: f.write(str(num) + '\n') The script runs without errors, but the output file contains the numbers in descending order instead of ascending. The developer checks the sort() method and confirms it sorts in ascending order. What is the MOST likely cause of the issue?
27Arrange the steps to write and run a Python script from the command line in the correct order.
28Arrange the steps to read data from a text file in Python.
29Arrange the steps to slice a list in Python.
30Match each Python data type to its description.
31Match each Python keyword to its use.
32Match each Python list method to its effect.
33A developer writes code to calculate the area of a rectangle and prints it. The code is: length = 10 width = 5 area = length + width print('The area is', area) If the width is accidentally assigned a string '5', what error will occur?
34An application requires different messages based on temperature. Given: temp = 25 if temp > 30: print('Hot') elif temp > 20: print('Warm') else: print('Cool') What is the output?
35A QA engineer needs to run a test 5 times. Which loop construct is most appropriate?
36A data scientist has a list: scores = [88, 92, 79, 93, 85]. They want to add 5 bonus points to each score and store the new scores. Which code accomplishes this?
37A developer wants to extract the file extension from a filename: 'report.pdf'. Which string method will return 'pdf'?
38A function is defined as: def add(a, b=5): return a + b What is the result of add(10)?
39A developer writes: try: x = int('hello') except ValueError: x = 0 except TypeError: x = -1 finally: x = x + 1 What is the final value of x?
40Consider code: def outer(): x = 1 def inner(): nonlocal x x = 2 inner() print(x) outer() What is printed?
41A dictionary: d = {1: 'a', 2: 'b', 3: 'c'}. Which code will cause a KeyError?
42Which TWO of the following are valid variable names in Python?
43Which TWO statements about Python lists are true?
44Which THREE of the following will correctly iterate over all keys and values of a dictionary d = {'a':1, 'b':2}?
45Consider the following code: x = input('Enter a number: ') print(x + x) A user enters 5 at the prompt. What is printed?
46The above JSON is loaded into a Python dictionary named data using json.load(). A developer writes: print(data['languages'][1][:3]) What is printed?
47Which of the following code snippets will correctly assign the integer 10 to the variable 'x'?
48A programmer writes the following code: if x > 5: print('Greater') What is the most likely cause of an IndentationError?
49According to PEP 8, which of the following is the recommended way to name a constant representing the maximum number of retries?
50What is the output of the following code? print('Hello'.upper())
51Which logical expression evaluates to True given that a = 5 and b = 10?
52Which of the following is the most efficient (Pythonic) way to create a list of squares for numbers 0 through 9?
53What function is used to read input from the user in Python 3?
54Consider the following function definition: def add(a, b): return a + b What is the value of add(3, '4')?
55What is the scope of a variable defined inside a function?
56Which TWO of the following are valid Python variable names? (Choose two.)
57Which THREE of the following are correct ways to create a list containing the numbers 1, 2, 3? (Choose three.)
58Which TWO of the following expressions evaluate to True? (Choose two.)
59What is the output of the code in the exhibit?
60A developer runs the code from the exhibit and gets the error shown. Which of the following is the most likely cause?
61The exhibit shows a JSON configuration. Which Python data structure is best suited to represent this configuration?
62A junior developer writes the following code to swap two variables: a = 5; b = 10; a = b; b = a. When they print a and b, what is the output?
63A team is developing a script that processes user input. They want to ensure that if the user enters a non-numeric value when asked for age, the program does not crash. Which approach should they use?
64A Python script processes a large file and runs out of memory. Which solution is most appropriate?
65Which of the following is a correct way to comment multiple lines in Python?
66A programmer wants to iterate over a list and also access the index. Which built-in function should they use?
67What is the output of the following code? x = [1, 2, 3]; y = x; y.append(4); print(x)
68Which of the following is an immutable data type in Python?
69A developer writes a function that returns multiple values. How should they return these values?
70What is the result of the expression: (1 and 0) or (not False and True)?
71Which TWO of the following are valid variable names in Python? (Choose Two)
72Which TWO of the following statements about Python's for loop are correct? (Choose Two)
73Which THREE of the following are valid ways to create a list with elements 1, 2, 3? (Choose Three)
74Refer to the exhibit. What is printed?
75Refer to the exhibit. What is the most likely cause of this error?
76A developer wrote: a, b, c = 10, 20, 30; avg = a + b + c / 3; print(avg). What is the output?
77A Python function is designed to return the first element of a list. However, when passed an empty list, it raises an IndexError. Which best practice should be applied to handle this robustly?
78A programmer needs to read a file line by line and process each line. Which of the following is the most memory-efficient and Pythonic approach?
79A Python script calculates the area of a circle: radius = 5; area = 3.14 * radius ** 2; print(area). What is printed?
80A program uses a for loop to double each element in a list: numbers = [1, 2, 3, 4, 5]; for num in numbers: num = num * 2. After execution, numbers remains unchanged. Why?
81A programmer wants to create a function that can accept any number of keyword arguments and store them in a dictionary. Which function definition is correct?
82A Python program prompts the user for their age and stores it in a variable. Which is the correct way to convert the input to an integer?
83A developer needs to check if a number is positive and even. Which conditional expression is correct?
84A function is supposed to modify a list passed as argument by appending an element. However, after calling the function, the original list remains unchanged. Which is the most likely cause?
85Refer to the exhibit. What is the output?
86Refer to the exhibit. Which of the following is true about the output?
87Which two of the following are valid Python variable names? (Choose two.)
88Which two of the following are correct ways to create a dictionary in Python? (Choose two.)
89Which two of the following are true about Python lists? (Choose two.)
90A junior developer writes a Python script to calculate the average of three numbers: avg = a + b + c / 3. What is the problem with this code?
91A developer writes a function that modifies a global variable inside the function: count = 0 def increment(): count += 1 When called, an error occurs. What is the correct way to fix this?
92A company is developing a data processing pipeline that must handle large datasets efficiently. They notice that using a list comprehension to filter data is slower than expected. Which alternative approach would likely improve performance?
93A developer wants to create a list of even numbers from 0 to 10 inclusive. Which code snippet will correctly produce [0, 2, 4, 6, 8, 10]?
94A beginner writes: x = 10; y = 3; print(x // y). What is the output?
95A developer is writing a script to process user input. The script should repeatedly ask for a number until a valid integer is entered. Which loop structure is most appropriate?
96A developer writes: print('Hello' + 5). What is the result?
97A company has a Python script that imports a module from a package. The package structure is: mypackage/__init__.py, mypackage/module.py. The script uses 'from mypackage import module'. Which file must exist for this import to work?
98A script uses 'import math' then calls 'math.sqrt(-1)'. What is the outcome?
99Refer to the exhibit. What is the output when the following code is executed: print(calculate_discount(100, 0.6))
100Refer to the exhibit. What is the output?
101Refer to the exhibit. A developer runs this code. What is printed?
102Which TWO of the following are valid Python variable names?
103Which THREE of the following are built-in Python data types?
104Which TWO statements correctly describe Python's dynamic typing?
105Which of the following variable names is valid in Python?
106What is the result of the following expression? 3 + 4 * 2 ** 3 // 5
107Given the code: my_list = [1, 2, 3, 4, 5]. What is the output of print(my_list[-3:-1])?
108What does the following code print? text = 'Hello World'; print(text.replace('o', '0').upper())
109Which of the following is a floating-point literal?
110What is the output of the following code? try: print(1/0); except ZeroDivisionError: print('error'); finally: print('done')
111Which keyword is used to define a function in Python?
112What does the following code output? for i in range(3): if i == 1: continue; print(i, end=' ')
113Consider the code: x = 10; def func(): x = 5; print(x); func(); print(x). What is the output?
114Which TWO of the following are immutable data types in Python?
115Which TWO of the following code snippets will produce the output 'True'? (Assume all variables are defined appropriately.)
116Which THREE of the following are valid ways to create a list in Python?
117Refer to the exhibit. What type of error occurred, and which line caused it?
118You are a junior developer at a logistics company. Your team maintains a Python script that processes daily shipment data from a CSV file. The script reads the file, computes total weight per shipment, and writes results to a new CSV. Recently, the script started crashing sporadically with a 'ValueError: invalid literal for int() with base 10: 'NULL''. The CSV file sometimes contains the string 'NULL' in the weight column for missing values. The current code reads the weight column as: weight = int(row['weight']). Your team lead wants a robust fix that handles missing data gracefully without crashing, and also logs the line number for any problematic rows for later review. Which of the following approaches best meets these requirements?
119You are an IT support specialist for a university. A professor uses a Python script that analyzes exam scores from a text file. The script calculates the average score and prints it. Recently, the script outputs 'NaN' instead of a number. The relevant code is: scores = [float(line.strip()) for line in open('scores.txt')]; average = sum(scores) / len(scores); print(average). You inspect the scores.txt file and find that one line contains the word 'Absent' and another line is blank. The professor wants the script to ignore non-numeric lines and blank lines, and also print a warning if any line was skipped. Which of the following modifications to the script best achieves this?
120A developer writes a function that calculates the area of a rectangle and prints the result inside the function. Later, they need to use this area in another calculation. What should they do to make the function reusable and composable?
121While debugging a Python script, you see the following error: 'IndentationError: expected an indented block'. The code appears to be correctly indented with spaces. What is the most likely cause?
122A Python developer is creating a function that processes a list of dictionaries and needs to ensure the original list remains unchanged. They write the following code: def process(data): for item in data: item['processed'] = True return data What is the best-practice critique of this function?
123A junior developer is writing a script to read a number from input and double it. They write: num = input("Enter a number: ") result = num * 2 print(result) When they test with input 5, the output is '55' instead of 10. What is wrong?
124A team is writing a Python script that reads a large log file and counts occurrences of ERROR. The script works but is very slow. They profile it and find that most time is spent reading the file line by line. Which optimization technique is most appropriate?
125Which TWO of the following are valid variable names in Python? (Choose two.)
126Which THREE of the following code snippets will successfully print the string 'Hello, World!'? (Choose three.)
127A Python script contains the following code: x = [1, 2, 3] y = x y.append(4) z = x.copy() z.append(5) After execution, which TWO of the following statements are true? (Choose two.)
128You are a junior developer at a small startup. Your team has a Python script that automates daily data processing. The script reads a CSV file, processes each row, and writes results to a new file. Recently, the script started crashing with a 'ValueError: invalid literal for int()' error. The error occurs on a line that converts a field to an integer using int() on a string value. The CSV file comes from an external source that sometimes contains non-numeric values like 'N/A' or empty strings. Which course of action is best to handle this robustly without stopping the entire process?
129You are maintaining a Python script that calculates team bonuses based on sales data. The script reads a dictionary where keys are employee names and values are total sales (float). It then applies a 10% bonus if sales exceed 5000. The code snippet is: def calculate_bonus(sales): for name, value in sales.items(): if value > 5000: print(f"{name} gets bonus") However, the manager wants the script to return a list of employees who qualify, not just print them. They also want to avoid side effects. What is the best way to modify this function?
130You are a developer in a company that runs a Python script daily to generate reports. The script uses the os module to list files in a directory and process each. Recently, after a server migration, the script fails with 'PermissionError: [Errno 13] Permission denied'. The script runs under a service account that has read/write access to most folders, but the migration changed the permissions on certain subdirectories. The error is intermittent, occurring only for some files. You need to fix the script to continue processing other files even if one fails. Which approach should you take?
131You are working on a Python application that interacts with an external API to fetch user data. The API returns JSON responses. Occasionally, the API returns a response with a missing key that your code assumes always exists, causing a KeyError. The application is critical and must continue functioning even if some data is incomplete. The data is processed in a loop over a list of user IDs. Your team lead suggests using the dictionary's get() method with a default value. However, the nested structure may have missing keys at multiple levels. What is the most robust way to handle this?
132You are a developer in a financial firm. Your team is building a Python module that performs complex calculations on large datasets. To improve performance, you are using list comprehensions and built-in functions. Your code passes all unit tests, but during integration testing, the memory usage spikes unexpectedly. The problematic area is a function that constructs a large list of intermediate results using a list comprehension that references a generator. The code is: def process(data): results = [expensive_transform(x) for x in data] # further processing on results You suspect that the list comprehension stores all results in memory at once, but you need to keep the function's output as a list for subsequent operations. What is the best solution to reduce memory without changing the function's return type?
133You are a developer on a team that maintains a legacy Python 2 codebase being migrated to Python 3. One function reads a file in text mode and counts word frequencies. In Python 2, the code used the dict.iteritems() method to iterate over the dictionary. After migration, the code raises AttributeError: 'dict' object has no attribute 'iteritems'. You need to update the code to work in Python 3 while minimizing changes. Which action should you take?
134You are a developer in a data science team using Python for analysis. A colleague wrote a script that downloads a CSV file from a URL, parses it using csv.DictReader, and prints summary statistics. The script works on his machine but fails on yours with 'UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe9 in position 100: invalid continuation byte'. The CSV file contains text in multiple languages, including French accents. The error occurs in the csv.DictReader call. You need to fix the script to work on any machine. Which approach is best?
135Which TWO of the following are valid variable names in Python?
136A junior developer is writing a script to process a list of user IDs: ids = [101, 102, 103, 104]. The goal is to create a new list where each ID is increased by 10, without modifying the original list. The developer writes: new_ids = ids.append(10). However, the output shows None. The developer needs to correctly create the new list. Which code should the developer use to achieve this?
137A system administrator is automating server configuration using Python. She has a dictionary: config = {'host': 'localhost', 'port': 8080, 'debug': True}. She needs to add a new key 'timeout' with value 30 if it does not already exist, but only if the 'debug' key is False. If 'debug' is True, she should not add 'timeout'. Additionally, she wants to ensure that the ordering of keys in the dictionary remains stable (insertion order). Which code snippet correctly implements this logic?
Deep-dive questions
The most-searched questions in this domain — detailed explanations, worked examples, full answer breakdowns.
The Computer Programming and Python Fundamentals domain covers the key concepts tested in this area of the PCEP exam blueprint published by Python Institute. Courseiva provides free domain-focused practice, mock exams, missed-question review, and readiness tracking across all PCEP domains — no account required.
The Courseiva PCEP question bank contains 137 questions in the Computer Programming and Python Fundamentals domain, covering the 18% of the exam attributed to this domain in the official Python Institute blueprint. Click any question to see the full explanation and answer breakdown.
Start with a 10-question focused session to identify your baseline accuracy in this domain. Read every explanation — even for questions you answer correctly — to understand the reasoning. Once you score consistently above 80%, move to a 20–30 question session to confirm depth before moving to the next domain.
Yes — the session launcher on this page draws questions exclusively from the Computer Programming and Python Fundamentals domain. Choose 10, 20, 30, or 50 questions for a focused session, or click individual questions to review them one by one.
Save your results, see per-domain analytics, and get readiness scores — free, for every certification.
Sign Up FreeFree forever · Every certification included