




























































































Study with the several resources on Docsity
Earn points by helping other students or get them with a premium plan
Prepare for your exams
Study with the several resources on Docsity
Earn points to download
Earn points by helping other students or get them with a premium plan
The PCEP Certified Entry-Level Python Programmer (PCEP-30-0x) Ultimate Exam is designed for beginners entering the world of programming. It covers Python fundamentals, data types, control structures, functions, and basic programming concepts. The package includes comprehensive study guides, practice questions, and detailed explanations to build strong programming foundations and prepare candidates for certification success.
Typology: Exams
1 / 104
This page cannot be seen from the preview
Don't miss anything!





























































































Question 1. Which of the following statements about the Python interpreter is TRUE? A) It compiles Python code to machine code before execution. B) It translates Python source line‑by‑line into bytecode that runs on a virtual machine. C) It requires a separate linking step like C++. D) It can only execute code that has been pre‑compiled with pyc files. Answer: B Explanation: The Python interpreter parses source code into bytecode, which the Python virtual machine executes line‑by‑line. No separate linking step is performed. Question 2. In Python, which term describes the set of characters that can appear in a program? A) Syntax B) Semantics C) Lexical tokens D) Indentation Answer: C Explanation: Lexical tokens (or lexemes) are the smallest units—keywords, identifiers, literals, operators—that the lexer recognizes. Question 3. Which of the following is a syntax error? A) x = 5 B) if x > 0: print(x) C) def foo(): D) for i in range(5) Answer: D
Explanation: A for loop requires a colon at the end; without it the parser raises a syntax error. Question 4. What is the result of 3e2 + 4 in Python? A) 7 B) 304.0 C) 3004 D) 3e2 + 4 raises a TypeError Answer: B Explanation: 3e2 is scientific notation for 300.0; adding 4 yields 304.0. Question 5. Which literal creates a binary integer value of decimal 10? A) 0b1010 B) 0o12 C) 0xA D) 10b Answer: A Explanation: The prefix 0b denotes a binary literal; 0b1010 equals decimal 10. Question 6. According to PEP 8, which variable name is preferred? A) UserName B) user_name C) userName D) user-name
Answer: A Explanation: Floor division (//) returns the integer quotient; 7 // 3 is 2. Question 10. After executing x = 5; x += 3, what is the value of x? A) 3 B) 5 C) 8 D) 53 Answer: C Explanation: The augmented assignment += adds the right‑hand operand to the variable, so 5 + 3 = 8. Question 11. Which print call will output Hello-World without a newline at the end? A) print("Hello-World", end="\n") B) print("Hello-World", sep="-") C) print("Hello", "World", sep="-", end="") D) print("Hello-World") Answer: C Explanation: sep joins the arguments with -, and end="" suppresses the newline. Question 12. If a user types 42 at the prompt, what does int(input()) return? A) '42' (string) B) 42 (integer)
C) 42.0 (float) D) Raises a ValueError Answer: B Explanation: input() returns a string; wrapping it with int() converts the string '42' to the integer 42. Question 13. Which relational operator checks for inequality? A) == B) != C) > D) <= Answer: B Explanation: != evaluates to True when the two operands are not equal. Question 14. What is the output of the following code?
x = 10 if x > 5: print("A") elif x > 8: print("B") else: print("C")Question 17. Which statement correctly shifts the bits of 0b0011 two places to the left? A) 0b0011 << 2 B) 0b0011 >> 2 C) 0b0011 << - 2 D) 0b0011 >> - 2 Answer: A Explanation: The left‑shift operator << moves bits toward higher significance; 0b0011 << 2 yields 0b1100. Question 18. How many times will the following loop execute?
i = 0 while i < 5: i += 1 if i == 3: continue print(i)A) 2 B) 3 C) 4 D) 5 Answer: C
Explanation: The loop runs while i goes 1‑5. When i == 3, continue skips the print. Printed values are 1,2,4,5 → four executions. Question 19. What is the purpose of the else clause in a while loop? A) Executes after the loop body each iteration. B) Executes only if the loop terminates via break. C) Executes when the loop condition becomes false without a break. D) It is syntactically invalid. Answer: C Explanation: The else block runs after normal termination (condition false) but not when break exits the loop. Question 20. What does the following for loop print?
for i in range(2, 7, 2): print(i, end=",")A) 2,4,6, B) 2,4,6,8, C) 2,3,4,5,6, D) 2,5, Answer: A Explanation: range(2,7,2) generates 2,4,6; the loop prints each followed by a comma.
Question 24. After executing lst = [0,1,2,3]; lst.append(4), what is lst[4]? A) 0 B) 3 C) 4 D) Raises IndexError Answer: C Explanation: append(4) adds 4 as the new last element; index 4 now holds 4. Question 25. Which list method removes the first occurrence of a value? A) pop() B) remove() C) delete() D) discard() Answer: B Explanation: remove(value) searches for the first matching element and deletes it. Question 26. What is the result of list(range(3)) * 2? A) [0,1,2,0,1,2] B) [0,1,2,2] C) [0,1,2,0,1,2,0,1,2] D) Raises TypeError Answer: A
Explanation: Multiplying a list by an integer repeats its contents; list(range(3)) is [0,1,2], repeated twice yields [0,1,2,0,1,2]. Question 27. Which list comprehension creates a list of squares for numbers 0‑4? A) [x^2 for x in range(5)] B) [x**2 for x in range(5)] C) [x*2 for x in range(5)] D) [x**2 for x in range(1,5)] Answer: B Explanation: ** is the exponent operator; x**2 computes the square. range(5) yields 0‑4. Question 28. What does the statement del lst[1:3] do? A) Deletes the element at index 1 only. B) Deletes elements at indices 1 and 2. C) Deletes the element at index 3 only. D) Clears the entire list. Answer: B Explanation: Slice deletion removes all items whose index falls in the slice 1:3 (i.e., 1 and 2). Question 29. Which of the following creates a tuple containing a single element 5? A) (5) B) [5] C) (5,) D) {5}
D) \t Answer: B Explanation: \\ is the escape sequence for a literal backslash. Question 33. What is the result of 'Hello'.split('l')? A) ['He', 'lo'] B) ['He', '', 'o'] C) ['H', 'e', 'l', 'l', 'o'] D) ['Hello'] Answer: B Explanation: split('l') cuts the string at each 'l', producing ['He', '', 'o'] (empty string between the two consecutive 'l's). Question 34. Which method joins an iterable of strings using a hyphen as a separator? A) "-".join(["a","b","c"]) B) join("-", ["a","b","c"]) C) ["a","b","c"].join("-") D) "-".concat(["a","b","c"]) Answer: A Explanation: The str.join() method is called on the separator string. Question 35. What will dict.get('key', 0) return if 'key' is not present in the dictionary? A) None B) 0
C) Raises KeyError D) 'key' Answer: B Explanation: dict.get(key, default) returns default when the key is missing; here the default is 0. Question 36. Which of the following dictionary literals is syntactically correct? A) {1: 'one', 2: 'two'} B) {[1]: 'one', (2): 'two'} C) {1='one', 2='two'} D) {1: 'one' 2: 'two'} Answer: A Explanation: Keys must be immutable; integers are valid. Option B uses a list as a key (invalid), C uses = instead of :, D lacks a comma. Question 37. How can you safely retrieve a value for key 'age' from dictionary person without risking a KeyError? A) person['age'] B) person.get('age') C) person['age'] if 'age' in person else None D) Both B and C Answer: D Explanation: dict.get() returns None (or a default) if the key is absent; the conditional expression also avoids KeyError. Question 38. Which statement correctly adds a new key‑value pair 'city': 'Paris' to dictionary d?
Question 41. In Python, default arguments are evaluated at which time? A) Each time the function is called. B) When the function definition is executed. C) When the interpreter starts. D) Never; they are placeholders. Answer: B Explanation: Default argument expressions are evaluated once when the def statement runs, which can lead to surprising behavior with mutable defaults. Question 42. Which call correctly passes arguments by keyword to the function def greet(name, greeting='Hello'):? A) greet('Alice') B) greet('Alice', 'Hi') C) greet(name='Alice', greeting='Hi') D) All of the above Answer: D Explanation: All three are valid: positional, positional for both, and keyword arguments. Question 43. What is the output of the following code?
x = 5 def foo(): x = 10 ## PCEP300X Ultimate Exam return x print(foo())A) 5 B) 10 C) NameError D) None Answer: B Explanation: Inside foo, a new local variable x shadows the global one; the function returns the local value 10. Question 44. How can you modify a global variable counter inside a function? A) counter = counter + 1 (inside the function) B) global counter; counter += 1 (inside the function) C) nonlocal counter; counter += 1 (inside the function) D) Both A and B work without extra statements. Answer: B Explanation: The global statement tells Python that assignments refer to the module‑level variable. Question 45. Which exception is raised when converting the string 'abc' to an integer? A) ValueError B) TypeError C) SyntaxError D) NameError
except ZeroDivisionError: print("Error") else: print("No error") finally: print("Done")
A) `Error\nDone` B) `No error\nDone` C) `Done` D) `Error` Answer: A Explanation: The division raises `ZeroDivisionError`, the `except` prints "Error", then `finally` prints "Done". The `else` block is skipped. **Question 49.** Which of the following statements about the `range` object is FALSE? A) It is immutable. B) It supports indexing. C) It stores all numbers in memory at once. D) It can be iterated over multiple times. Answer: C Explanation: `range` generates numbers lazily; it does not store the entire sequence in memory. **Question 50.** What will `list('abc')` produce? ## PCEP300X Ultimate Exam A) `['a', 'b', 'c']` B) `['abc']` C) `('a','b','c')` D) `{'a','b','c'}` Answer: A Explanation: Converting a string to a list yields a list of its individual characters. **Question 51.** Which of the following slices returns the last three elements of list `L`? A) `L[-3:]` B) `L[:3]` C) `L[3:]` D) `L[-3]` Answer: A Explanation: A slice with a negative start index counts from the end; `-3:` selects the last three items. **Question 52.** What is the result of `bool([])`? A) `True` B) `False` C) Raises TypeError D) `[]` Answer: B Explanation: Empty sequences are considered falsy; `bool([])` returns `False`.