Term 1 Practice Questions Class 12 Computer Science 083

Session: 2021-22

In this section there are 55 Practice Questions released by CBSE for Class 12 Computer Science.  

 

1. If the value of i is 5, the expression i != 6

a) has the value False

b) has the value True

c) sets the value of i to 6

d) sets the value of i to -5

b) has the value True

 

 

2. The main difference between the modes ‘w’ and ‘a’ when opening a file in Python is that

a) ‘w’ is used for writing a file and ‘a’ for reading a file.

b) ‘w’ over-writes an existing file while ‘a’ writes to the end of the file.

c) ‘w’ is used with text files while ‘a’ is used with binary files.

d) ‘w’ gives an error if the file does not exist while ‘a’ creates it with no error.

d) ‘w’ gives an error if the file does not exist while ‘a’ creates it with no error.

 

 

3. Sushma gets the current date and time as a string x. Its value is “2021-10-30 12:49:44.216062”. Sushma prints the value of x[11:16] and gets “12:49”. Which of these will contain the date in yyyymm-dd format?

a) x[0:9]

b) x[0:10]

c) x[1:10]

d) x[1:11]

b) x[0:10]

 

 

4. Python’s Pickle module is used for serializing and de-serializing any Python object structure and dumping / loading it to or from a binary file. Which of these is a case where it can be useful?

a) graphically representing the contents of any Python object on the screen

b) sorting a large list of numbers in ascending or descending order quickly

c) storing the data in any Python object for later reconstruction or use

d) compressing a large dataset so that it can be saved in less than a tenth of the space

c) storing the data in any Python object for later reconstruction or use

 

 

5. Which of these Python data structures cannot have duplicate items and does not support ordering?

a) list

b) tuple

c) dictionary

d) set

d) set

 

 

6. Which of these Python data structures would be most suited to store the list of Indian states and

their corresponding capitals?

a) list

b) tuple

c) dictionary

d) set

c) dictionary

 

 

7. The statement p -= 5 has the same effect as which of these statements?

a) p = 5

b) p = -5

c) p = p – 5

d) p = 5 – p

c) p = p – 5

 

 

8. Which output lines of the following program will print the same results?

tup1 = (10, 20, 30, 40, 50, 60, 70, 80, 90)

print(tup1[5:-1]) # 1

print(tup1[5]) # 2

print(tup1[5:]) # 3

print(tup1[-4:8]) # 4

 

a) (1) and (2)

b) (1) and (4)

c) (2) and (3)

d) (1), (3) and (4)

d) (1), (3) and (4)

 

 

9. Every time Raj’s python program accesses the internet, it records the time and website accessed in a log file ‘internet_access.log’. This is one of the sample lines in the log file:

2021-09-01 10:03:00, www.google.com

Which of these lines would be used by the program to open the file?

a) logfile = open(‘internet_access.log’, ‘rb’)

b) logfile = open(‘internet_access.log’,’w’)

c) logfile = open(‘internet_access.log’, ‘a+’)

d) logfile = open(‘internet_access.log’, ‘ab’)

c) logfile = open(‘internet_access.log’, ‘a+’)

 

 

10. Which of these functions can be used to set a file’s current position?

a) seek()

b) set()

c) tell()

d) open()

a) seek()

 

 

11. When setting the current position of a file, the position CANNOT be set with reference to which of these?

a) the beginning of the file

b) the current file position

c) the middle of the file

d) the end of the file

c) the middle of the file

 

 

12. If a function is defined by the line “def calculate(p, q=100, r=10):”, which of the following is true?

a) p is an optional parameter

b) q and r are optional parameters

c) q will always have value 100 in the function

d) the above line will cause a syntax error

b) q and r are optional parameters

 

 

13. Which of these points about the return statement is FALSE?

a) A return statement can only be used inside a function

b) A return statement can be used without any expression

c) When encountered, a return statement terminates a function

d) A function cannot have more than one return statements

d) A function cannot have more than one return statements

 

 

14. A CSV file

a) is a text file

b) can store images

c) is a type of python program

d) is a Computer Software Validation file

a) is a text file

 

 

15. Python’s abs() function returns the absolute value of number passed to it. For example abs(5) is equal to 5 and abs(-3.1) = 3.1. What will be the value of abs (3 – abs(-10))

a) 13

b) -13

c) -7

d) 7

d) 7

 

 

16. Which of these statements about text and binary files is true?

a) A text file has the same number of characters in each line unlike a binary file.

b) A text file has a special End Of File character unlike a binary file.

c) An HTML file is an example of a text file while a CSV file is an example of a binary file.

d) Every character in a text file can occur in a binary file but the reverse is not true.

c) An HTML file is an example of a text file while a CSV file is an example of a binary file.

 

 

Read the below and answer questions 17 and 18:

The exponentiation operator in Python (**) has higher precedence than the division (/) and multiplication (*)

operators, meaning that ** will be evaluated before / and * in an expression. Operators / and * have the same

precedence.

Further, ** evaluates from right to left, meaning that if an expression has multiple operators of the same

precedence of **, the operator on the right will be evaluated before the operator on the left. On the other

hand, / and * evaluate from left to right.

 

17. Which operator will be evaluated first in this expression?

6 * 3 ** 2 ** 2 / 2

a) *

b) the first ** from the left

c) the second ** from the left

d) /

b) the first ** from the left

 

 

18. What will be the value of this expression:

4 / 2 ** 3 * 2

a) 16.0

b) 1.0

c) 1/4

d) 1/16

c) 1/4

 

 

19. Which of these statements about for and while loops in Python is TRUE?

a) A for loop usually run a given number of times; a while loop runs while a condition is met.

b) Statements in a for loop are always run at least once; those in a while loop may never be run.

c) A for loop cannot contain another for loop; a while loop can contain another while loop.

d) A for loop always has to have a loop counter; a while loop never uses a loop counter.

a) A for loop usually run a given number of times; a while loop runs while a condition is met.

 

 

20. How does a Python program know where a FOR block ENDS?

a) when it finds a closing bracket (}) character

b) when it finds the keyword ENDFOR

c) when it finds a line with matching indentation

d) when it finds a colon (:) character

c) when it finds a line with matching indentation

 

 

21. Sonal wrote the following program print_students.py to print the number of students in her class.

class = 5

section = “A”

students = 30

print (“There are”, students, “students in class”, class, section)

However, when she ran the program, she got the following output:

File “.\print_students.py”, line 1

class = 5

SyntaxError: invalid syntax

 

Which of these changes will make the program run without error?

a) writing ‘==’ instead of ‘=’ (correct assignment operator)

b) writing “5” instead of 5 (variable should be a string)

c) changing the variable name (‘class’ is a reserved word)

d) adding a colon (‘:’) at the end of the statement (begin indented block)

c) changing the variable name (‘class’ is a reserved word)

 

 

Read the following and answer questions 22 and 23:

A log file records the time, userid, record number and number of bytes read from a certain database. Each of

the fields uses a fixed number of bytes. The last 3 lines of the file were as follows at some time:

2021-08-09 10:21:20::0014::06733628::00001024

2021-08-09 10:22:03::0443::06384626::00001024

2021-08-09 10:22:52::0014::00549374::00001024

 

22. What is the inter-field delimiter used by the file?

a) Comma (,)

b) Colon (:)

c) Double-colon(::)

d) Hyphen (-)

b) Colon (:)

 

 

23. Which of these lines will return the latest entry from the file? (Assume the file handler is file and SEEK_START and SEEK_END represent the offsets from the beginning and end of the file respectively)

a) file.seek(-45, SEEK_END)

b) file.seek(45, SEEK_END)

c) file.seek(135, SEEK_START)

d) file.seek(-135, SEEK_START)

d) file.seek(-135, SEEK_START)

 

 

24. The advantage of opening a file using the with clause instead of the open() function is that:

a) the access mode does not have to be specified

b) the file does not have to explicitly be closed

c) the filename does not have to be specified

d) the file gets opened for reading and writing

b) the file does not have to explicitly be closed

 

 

25. What should appear in the place of the ‘?’ symbol in the table below?

mystring = “I love Python”

Expression Value

mystring[-1] n

mystring[-3:] hon

mystring[5:-4] ?

a) e Py

b) ve

c) evol

d) ython

a) e Py

 

 

26. Identify the error in the program below:

import pickle

print(“The data that were stored in file are: “)

fileobject=open(“mydata.dat”,”r”)

objectvar=pickle.load(fileobject)

fileobject.close()

print(objectvar)

 

a) The 3rd line should be fileobject=open(“mydata.dat”,”rb”)

b) The 4th line should be objectvar=pickle.dump(fileobject)

c) The fileobject.close() statement should come AFTER the print(objectvar) statement

d) The last line should be print(fileobject)

a) The 3rd line should be fileobject=open(“mydata.dat”,”rb”)

 

 

27. What will be the output of this program?

p = None

q = 0

r = “”

s = “None”

if (p == q):

print (“None is the same as 0”)

elif (p == r):

print (“None is the same as empty string”)

elif (p == s):

print (“None is the same as the string ‘None'”)

else:

print (“None of the above”)

 

a) None is the same as 0

b) None is the same as empty string

c) None is the same as the string ‘None’

d) None of the above

d) None of the above

 

 

In Python, lists are mutable and tuples immutable. See the program and answer questions 28 and 29:

list_items = [“Sachin”, “Dravid”, “Kapil”, “Dhoni”, “Sourav”]

tuple_items = (“Sunday”, “Monday”, “Tuesday”, “Wednesday”, “Thursday”)

list_items[4] = “Harbhajan”

tuple_items[4] = “Friday”

print(list_items[4], tuple_items[4])

 

28. In python, the term mutable means:

a) memory-efficient

b) fixed

c) changeable

d) sequential

c) changeable

 

 

29. What will be the output of this program?

a) Sourav Thursday

b) Harbhajan Friday

c) An error will be reported on line 3

d) An error will be reported on line 4

d) An error will be reported on line 4

 

 

30. What will be the output of this program? (All quotes shown are double quotes)

message = “My favourite movie is “3 Idiots””

print(message[23:])

a) 3 Idiots

b) 3 Idiots””

c) Syntax error on line 1

d) Syntax error on line 2

c) Syntax error on line 1

 

 

31. What will be the output of this program?

txt = “How are you, Ravi?”

x = txt.find(“,”)

y = txt.find(“?”)

print(txt[x+2:y])

a) How are you Ravi

b) How are you

c) Ravi

d) Ravi?

c) Ravi

 

 

32. What will be the output of this program?

m = 1

n = “1”

print (str(m) + n)

a) 1

b) 2

c) 11

d) Syntax Error

c) 11

 

 

33. What will be the output of this Python line?

print(“This is Delhi. # Delhi is the capital of India.”) # This is a comment.

a) This is Delhi.

b) This is Delhi. # Delhi is the capital of India. # This is a comment.

c) This is Delhi. # Delhi is the capital of India.

d) This is Delhi. This is a comment.

c) This is Delhi. # Delhi is the capital of India.

 

 

34. What will be the output of this program?

p = “12”

q = “5”

r = 10

s = 8

print(p+q, r+s)

 

a) 17 18

b) 125 108

c) 17 108

d) 125 18

d) 125 18

 

 

Study the following program which has an unintended error and answer questions 35 and 36. [Recall that range (m, n) is all integers from m to n-1]

i = 1

while (i <= 10): # For every number i from 1 to 10

sum = 0 # Set sum to 0

for x in range(1,i+1):

sum += x # Add every number from 1 to i

print(i, sum) # print the result

 

35. What is the programmer trying to do in the program?

a) Print all the odd numbers from 1 to 10

b) Print the total of all numbers from 1 to 10

c) For each number till 10, print the sum of numbers between 1 and the number.

d) For each number till 10, print the sum of the number and its previous number

c) For each number till 10, print the sum of numbers between 1 and the number.

 

 

36. Identify the error in the program

a) sum = 0 should be BEFORE the while statement

b) The range should be from 0 (not 1) to i + 1

c) i = i + 1 should be added after the print statement

d) There is no error in the program

a) sum = 0 should be BEFORE the while statement

 

 

37. What will this program output? [Recall that 5 % 3 = 2, 10 % 2 = 0 and 7 % 3 = 1]

for i in range(0, 100):

if (i % 3 == 0) or (i % 4 == 0):

continue

print(i)

 

a) All numbers less than 100 that are multiples of 12

b) All numbers less than 100 that are NOT multiples of 12

c) All numbers less than 100 that are multiples of 3 or 4

d) All numbers less than 100 that are NOT multiples of 3 or 4

d) All numbers less than 100 that are NOT multiples of 3 or 4

 

 

38. See the following program snippet which lists out the names of all students:

student_list = [“Ravi”, “Sunita”, “Gopal”, “Salma”, “Lily”]

number_of_students = len(student_list)

i = 0

while i <= number_of_students:

print(student_list[i])

i += 1

When it was run, it gave the following error on the last line

IndexError: list index out of range

Which of these will correct the error?

a) Replacing i = 0 with i = 1

b) Replacing i <= number_of_students with i < number_of_students

c) Replacing student_list[i] with student_list[i-1]

d) Replacing i += 1 with i = i + 1

c) Replacing student_list[i] with student_list[i-1]

 

 

39. See the code below using Python’s pickle module to STORE data into file ‘Latlong data’:

import pickle

data = [‘New Delhi’, ‘28.6139° N’, ‘77.2090° E’]

file = open(‘Latlong data’, (1) )

pickle. (2) (data, file)

file.close()

What, respectively, should appear in blanks (1) and (2)?

a) ‘rb’ and dump

b) ‘wb’ and dump

c) ‘rb’ and load

d) ‘wb’ and load

c) ‘rb’ and load

 

 

40. What will be the value of p and r at the end of this program?

p = 40

r = 50

p = p + r

r = p – r

p = p – r

print (p, r)

 

a) p = 40, r = 40

b) p = 50, r = 50

c) p = 50, r = 40

d) p = 40, r = 50

c) p = 50, r = 40

 

 

Read the following and answer questions 41 and 42.

File ‘RoadNotTaken.txt’ has these lines:

Two roads diverged in a wood, and I—

I took the one less traveled by,

And that has made all the difference.

The following code opens this file:

fp = open(“RoadNotTaken.txt”, ‘r’)

poem = fp.readlines()

print (len(poem))

fp.close()

 

41. What is the data type of the variable poem?

a) string

b) list

c) tuple

d) dictionary

b) list

 

 

42. What will be the output of the above program?

a) 2

b) 3

c) 8

d) 22

b) 3

 

 

43. The score of a student in a test is stored as a Python tuple. The test had 3 questions, with some questions having subparts whose scores are recorded separately.

score = (6, (5, (2, 1), 8), (4, 3, (1, 3, 2)))

print (score[2][2])

What will be the output of this program snippet?

a) (1, 3, 2)

b) (2, 1)

c) 3

d) 8

a) (1, 3, 2)

 

 

44. What will be the output of the program snippet below?

def phone_with_country_code (phone_number, country=”India”):

country_codes = {“India”: “+91”, “Singapore”: “+65”, “United States”: “+1”}

if country not in country_codes:

return(“Country is not supported”)

return (country_codes[country] + ” ” + phone_number)

print(phone_with_country_code(“9876500001”), “|”, phone_with_country_code(“203-607-

1232″, “United States”))

 

a) India 9876500001 | United States 203-607-1232

b) +91 9876500001 | +1 203-607-1232

c) 9876500001 | +1 203-607-1232

d) 9876500001 | United States 203-607-1232

b) +91 9876500001 | +1 203-607-1232

 

 

45. The choice() method of Python’s random module returns a random element from a list. See the program below.

import random

suits = (“Hearts”, “Clubs”, “Diamonds”, “Spades”)

cards = (“Ace”, “2”, “3”, “4”, “5”, “6”, “7”, “8”, “9”, “Jack”, “Queen”, “King”)

card_picked = random.choice(cards) + ” of ” + random.choice(suits)

print(card_picked)

Which of these COULD be an output of this program?

a) Hearts Ace

b) Diamonds of Queen

c) 7 of King

d) Jack of Clubs

d) Jack of Clubs

 

 

46. Study the manual entry for the split() method given below.

split (sep=None, maxsplit=- 1)

Return a list of the words in the string, using sep as the delimiter string. If maxsplit is

given, at most maxsplit splits are done (thus, the list will have at most maxsplit+1

elements). If maxsplit is not specified or -1, all possible splits are made.

 

What will be the output of the program given below?

string = “2021-08-09 10:22:03::0443::06384626::00001024”

parts = string.split(“::”, 2)

print(parts)

 

a) [‘2021-08-09 10:22:03’, ‘0443::06384626::00001024’]

b) [‘2021-08-09 10′, ’22’, ’03::0443::06384626::00001024′]

c) [‘2021-08-09 10:22:03’, ‘0443’, ‘06384626::00001024’]

d) [‘2021-08-09 10:22:03’, ‘0443’, ‘06384626’, ‘00001024’]

c) [‘2021-08-09 10:22:03’, ‘0443’, ‘06384626::00001024’]

 

 

47. What will be the output of this program?

p = 1

q = 6

def change_values():

global p

q = 5

p = p + q

return (p)

change_values()

print(p, q)

 

a) 6 5

b) 1 5

c) 6 6

d) 1 6

c) 6 6

 

 

Read the information below and answer questions 48 and 49

In Python and other languages, a ‘regular expression’ is a pattern of characters in which some characters have a special meaning. Specifically:

  1. Any characters enclosed within square brackets ([]) represent any one of those characters
  2. A * following a character represents zero or more of those characters.
  3. All letters and digits represent themselves

Thus:

ab* could represent ‘a’, ‘ab’, ‘abb’, ‘abbb’ and so on but NOT ‘bbb’ or ‘aba’. (Rules 2 and 3)

star[ekt] could represent ‘stare’, ‘stark’ or ‘start’ but NOT ‘star’ or ‘are’ (Rules 1 and 3)

a[bcd]* could represent ‘a’, ‘ab’, ‘abc’, ‘acdd’ and so on but not ‘aba’ or ‘aa’ (Rules 1-3)

 

48. Which of these would NOT be represented by [ab]c*?

a) ac

b) abc

c) bc

d) bccc

b) abc

 

 

49. A factory codes its products using a series of letters and numbers. Each code starts with 10, 11 or 12 (representing different production locations), followed by an S, M or L (for Small, Medium or Large), followed by a 4 digit number. Which of the following would represent this?

 

a) [101112][SML]1234

b) 1[012]SML[123456789]

c) 1[012][SML][0123456789][0123456789][0123456789][0123456789]

d) [012][012][SML][0123456789][0123456789][0123456789][0123456789]

a) [101112][SML]1234

 

 

Nagesh and Simran have written this Python program. It asks for a student’s name and roll no. If both match the records in a CSV file, it displays the student’s English, Maths and Computer Science marks.

The marks data is stored in a file student_marks.csv whose first 3 rows are as shown below:

Name,Roll No,Comments,English,Maths,Computer Science

Nagesh Rao,12342,,85,92,96

Simran Shah,14324,Absent for English test,A,87,99

Ravi Gulati,43234,,76,97,81

 

Study the program and answer the questions that follow:

import csv

print(“Enter your name and roll number to see your subject marks…\n”)

name = input(“Enter Name exactly as in Hall Ticket: “)

rollno = input(“Enter Roll No.: “)

with open(‘student_marks.csv’ (1) ) as csv_file:

csv_reader = csv.reader(csv_file, delimiter=’,’)

line_count = 0

match_found = False

for row in csv_reader:

line_count += 1

if line_count == 1:

(2)

else:

if row[0].lower() == name.lower() and row[1] == rollno:

match_found = True

eng_marks = row[3]

maths_marks = row[4]

cs_marks = row[5]

print(“\n”+row[0]+”‘s marks are:\nEnglish:”,eng_marks)

print(“Maths:”, maths_marks, “\nComp Sc:”, cs_marks,”\n\nThank you!”)

(3)

if match_found == False:

print (“\nNo matching name and roll number found. Please check and re-enter”)

 

50. What mode of opening should come in blank 1?

a) w

b) a

c) wb

d) <nothing is needed – r is default>

 

 

51. What statements, respectively, should come in blanks 2 and 3? Choose the BEST answer.

a) continue and continue

b) break and break

c) break and continue

d) continue and break

 

 

52. What is the data type of the variable match_found?

a) bytes

b) str

c) int

d) bool

 

 

53. The file student_marks.csv contains a comment field in every row. Which of these comments may cause the program to fail to read that row properly?

a) New student who joined school in Dec

b) School Topper in English!

c) Absent for English, Maths papers

d) <empty string>

 

 

54. Which of these is an error in the program?

a) line_count should be initialised to 1 (not 0) in line 9.

b) The last 2 lines should have one less indentation.

c) The file opened for reading is not closed using close().

d) None of the above.

 

 

55. For the names shown in the sample data, assuming the roll number is entered correctly, which of these will NOT find a match?

a) Nagesh Rao

b) Simram

c) Ravi Gulati

d) Simran shah

 

 

Copywrite © 2020-2024, CBSE Python,
All Rights Reserved