0% found this document useful (0 votes)
11 views133 pages

Comp 11 CS Combined Notes 2025

The document covers fundamental concepts in computer science, including memory units, language translators, operating systems, Boolean logic, logic gates, and number systems. It explains the hierarchy of memory units from bits to petabytes, the differences between low-level and high-level languages, and the role of operating systems. Additionally, it details Boolean logic operations, truth tables, and various number systems such as binary, octal, decimal, and hexadecimal, along with their conversions.

Uploaded by

prosecretaj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views133 pages

Comp 11 CS Combined Notes 2025

The document covers fundamental concepts in computer science, including memory units, language translators, operating systems, Boolean logic, logic gates, and number systems. It explains the hierarchy of memory units from bits to petabytes, the differences between low-level and high-level languages, and the role of operating systems. Additionally, it details Boolean logic operations, truth tables, and various number systems such as binary, octal, decimal, and hexadecimal, along with their conversions.

Uploaded by

prosecretaj
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 133

Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Unit-1

Computer Systems and Organization

Basic Computer Organization

Units of Memory
1. The smallest unit of memory is called a binary digit, or a bit.
2. The bit can assume only two values, 0 and 1.
3. A sequence of 4-bits is called a Nibble.
4. A Word is a fixed length sequence of bits which the processor can handle at a time.

Sr. No Unit Remarks

1 Bit (b) Can be 0 or 1

2 Nibble 1 nibble = 4 bits

3 Word Group of bits on which the CPU can work as a single unit. Can be
8 bits, 16 bits, 32 bits or 64 bits depending on CPU Architecture.

4 Byte (B) 1 B = 8 bits

5 KiloByte(KB) 1 KB = 1024 B

6 MegaByte(MB) 1 MB = 1024 KB

7 GigaByte(GB) 1 GB = 1024 MB

8 TeraByte(TB) 1 TB = 1024 GB

9 PetaByte(PB) 1 PB = 1024 TB
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Language Translators
Languages are majorly divided into two categories: Low Level Languages and High-Level Languages.
● Low Level Languages are nearer to Machine Code than to human-like languages. They are difficult
to understand by humans but easily understandable by machines.
● On the other hand, humans can easily understand high level languages but computers require
language translators to convert high level languages into low level languages which they understand.
● Low level language comprises Binary Language (combination of 0’s and 1’s) and Assembly
Language (uses keywords like ADD, SUB, STR), whereas High Level Language comprises C, C++,
Java, Python etc.
● Software that translates one language to another language is called language translators.
● Language Translators can be divided into Compiler, Interpreter and Assembler.

Compiler, Interpreter and Assembler


● A compiler is a language translator that converts high level language into low level language at
once. It shows all errors together with line number. Once all errors are corrected and object code is
created, compiler is no more required in memory.
● An Interpreter is a language translator that converts high level language into low level language line
by line, instead of converting the entire code at once. It stops at the line where error is found and
requires rectification of same to move forward. It is always required in memory.
● Assembly language code can be converted to machine code (Binary Code) using translator called
Assembler.

Operating System
An operating system is system software that acts as an interface between the user and the computer hardware
and manages all the resources of a computer.

Examples of Operating System

1. Desktop Operating System


a. Microsoft Windows
b. Apple’s macOS
c. Ubuntu (Linux based open source OS)
d. Google’s ChromeOS

2. Mobile Operating System


a. Google Android
b. Apple iOS
c. Symbian
d. Microsoft Windows RT
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Boolean Logic

Boolean Logic is a concept that involves binary variables and operations. It focuses on the values true and
false (1 and 0). It was developed by the English Mathematician and logician George Boole. Boolean Algebra
comprises of following:
1. Boolean Expression
2. Boolean Variable

Boolean Variable
A boolean variable is a variable that holds boolean values True/ False or 1/0.

Boolean Expression
A boolean expression is an expression that consists of a combination of boolean variables, boolean values
and boolean operators. A boolean expression evaluates to either True or False.

Boolean Operators
Boolean operators perform operations on operands (Boolean Variables/Values). The boolean operators are:
AND, OR and NOT.

AND operator - It evaluates to True(1) if all inputs are True(1), otherwise False(0). It is represented by the
dot operator (.) Example : A.B may be read A AND B

OR operator - It evaluates to True(1) if any of the inputs is True(1), otherwise False(0). It is represented by
the + operator. Example: A + B may be read as A OR B.

NOT operator - It evaluates to True(1) when the condition is False, and returns False(0) when the condition
is True(1).

Example: A' may be read as A complement.


Ā may be read as A complement.

Truth Table
A truth table is a representation of all possible combinations of the input variables and the corresponding
output values.

The number of rows in a truth table are 2n, where n is no. of input variables.

Example- Here, A and B are the input boolean variables, OR (+) is the operator, F is the output.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

A B F = A OR B

0 0 0

0 1 1

1 0 1

1 1 1

De Morgan’s Laws
DeMorgan’s First Law states that when two input variables are AND’ed and complemented, they are
equivalent to the OR of the complements of the individual variables.

(AB)'=A'+B'

A B A' B' AB (AB)' A'+B'

0 0 1 1 0 1 1

0 1 1 0 0 1 1

1 0 0 1 0 1 1

1 1 0 0 1 0 0
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

DeMorgan’s Second Law states that when two input variables are OR’ed and complemented, they are
equivalent to the AND of the complements of the individual variables.

(A+B)'=A'.B'

A B A' B' A+B (A+B)' A'.B'

0 0 1 1 0 1 1

0 1 1 0 1 0 0

1 0 0 1 1 0 0

1 1 0 0 1 0 0

Logic Gates
A logic gate is a device that performs a Boolean Function. One or more inputs in the form of 1/0 are provided
to get the specific output governed by a logic. Examples of Logic Gates are: AND, OR, NOT, NOR, NAND
and XOR.

NAND and NOR are called Universal Gates, as they can implement any Boolean expression.

AND Gate

Logic Gate Diagram

Truth Table
A B A.B

0 0 0

0 1 0

1 0 0

1 1 1
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

OR Gate

Logic Gate Diagram

Truth Table
A B A+B

0 0 0

0 1 1

1 0 1

1 1 1

NOT Gate

Logic Gate Diagram

Truth Table

A A'

0 1

1 0

NAND Gate
Logic Gate Diagram

Truth Table
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

NOR Gate

Logic Gate Diagram

A B A+B (A+B)'

0 0 0 1

0 1 0 1

1 0 0 1

1 1 1 0

Truth Table

XOR Gate

An XOR gate gives a high output when input combination


has odd number of 1's. A two input XOR Gate produces a high
output only when both the inputs are different.

Truth Table

A B A⊕B

0 0 0

0 1 1

1 0 1

1 1 0

XOR is represented as AB' + A'B


Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Logic Circuits
A logic circuit is an electronic circuit which performs logical operations on the input boolean variables, and
transforms them into the output using a combination of Logic Gates.

Examples of a circuit diagram are:

Y=(A.B)’BC’

Y Y=?

Number System
There are many possible ways to represent numbers. A number system provides a consistent and unique
method to represent the numbers.

Positional Number System

A positional number system is one way of writing numbers. It has unique symbols for 0 through (b – 1),
where b is the base (also known as radix) of the system. These symbols are called digits.

Some popular positional number systems are:


1. Binary - base 2
2. Octal - base 8
3. Decimal - base 10
4. Hexadecimal - base 16
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Decimal Number System


A decimal number uses base-10 for representing numbers. The numbers 0, 1, 2, 3, 4, 5, 6, 7, 8 and 9 are the
digits present in the system. Every number can be represented as a sum of powers of 10, with each power
weighted by a digit.

For example, in the decimal system, 534 can be represented as


534 = 5 x 102+ 3 x 101 + 4 x 100
Fractional numbers can also be represented using similar notation, for example, 123.238 can be represented
as
123.238 = 1 x 102 + 2 x 101 + 3 x 100 + 2 x 10-1 + 3 x 10-2 + 8 x 10-3
The powers of 10, which correspond respectively to the digits in a decimal integer when read from right to
left, are called the place values of the digits.

Binary Number System


The binary number system uses only two symbols, 0 and 1. Each numeral is known as a binary digit or a
bit. It is also known as the base-2 numeral system, where the positional digits are powers of 2.

The binary system is most easily implemented through computer hardware. The binary digits 0 and 1
correspond to the presence or the absence of a digital signal. The manipulation of binary digits is performed
using a combination of boolean logic gates and circuits. Negative numbers can also be represented in the
Binary Number System.

The numbers are represented by creating a sequence of bits, such as 00000, 010100, 011100 etc. Binary
numerals are often subscripted with 2 in order to indicate the base. For example, (110101)2. Numbers that
have no fractional part are called binary integers.

In the figure above, representation of the binary number (101.01)2 is shown. The most significant bit (MSB)
is the bit in a binary number sequence with the largest value. This is usually the bit farthest to the left. The
MSB represents the highest-order place of the binary integer. On the other hand, the Least Significant Bit
(LSB) is the right-most bit of the number.

The maximum possible sequence of binary numbers that can be created using a sequence of n-bits is 2n .
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Count of possible binary


No. of Bits
numbers

1 21 = 2

2 22 = 4

3 23 = 8

4 24 = 16

Octal Number System


Octal system, or the base-8 system uses 8 unique symbols, 0, 1, 2, 3, 4, 5, 6, and 7. The place values in the
octal system are powers of 8. We can use 3-bit binary numbers to represent the octal digits, since 23 = 8.

Decimal 3-bit Binary Octal Number


Number Number

0 000 0

1 001 1

2 010 2

3 011 3

4 100 4

5 101 5

6 110 6

7 111 7

For example, an octal number (532.67)8 can be represented in the decimal number system as
(532.67)8 = 5 x 82 + 3 x 81 + 2 x 80 + 6 x 8-1 + 7 x 8-2
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Octal numbers find applications where the number of bits in one word is a multiple of 3. They are also used
as shorthand for representing file permissions on UNIX/Linux operating systems and representation of
UTF8 numbers, etc. The advantage of using Octal numbers is that it uses fewer digits than the decimal
number system. It has fewer computations and is less prone to the computational errors.

Hexadecimal Number System


The hexadecimal number system uses 16 unique symbols, 0-9 and A-F for representation of numbers. The
place values in the hexadecimal system are powers of 16. Each hexadecimal digit has a unique 4-bit
representation since 24 = 16, so all possible digits can be represented with 4 bit binary numbers. The
hexadecimal numbering system is often used by programmers to simplify the binary numbering system
since large binary numbers can be organized and written neatly in their respective hexadecimal notations.
Decimal 4-Bit Binary Hexadecimal
Number Number Number

0 0000 0

1 0001 1

2 0010 2

3 0011 3

4 0100 4

5 0101 5

6 0110 6

7 0111 7

8 1000 8

9 1001 9

10 1010 A

11 1011 B

12 1100 C

13 1101 D

14 1110 E

15 1111 F
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Some popular uses of Hexadecimal numbers are:


● Representation of addresses in memory.
● Representation of colors on web pages.
● Representation of Media Access Control (MAC) addresses.
● Display error messages.

Number System Conversions


1) Decimal Number System to Other Base
a) Decimal Number System to Binary Number System
b) Decimal Number System to Octal Number System
c) Decimal Number System to Hexadecimal Number System
2) Other Base to Decimal Number System
a) Binary Number System to Decimal Number System
b) Octal Number System to Decimal Number System
c) Hexadecimal Number System to Decimal Number System
3) One Base to Other Base System
a) Binary Number System to Hexadecimal Number System
b) Hexadecimal Number System to Binary Number System
c) Binary Number System to Octal Number System
d) Octal Number System to Binary Number System
e) Hexadecimal Number System to Octal Number System
f) Octal Number System to Hexadecimal Number System

Decimal Number System to Binary Number System Conversion


Steps for the Integer part
1. For the integral part of the number, repeatedly divide the number by 2, and save the remainder.
2. Repeat the process until no further division is possible.
3. Read the remainders from the bottom to top to get the binary number.

Steps for the fractional part


1. Repeatedly multiply the fractional part by 2 and note the integer and fractional part of the product.
2. Repeatedly multiply the fraction part by 2 and note the integer part from top to the bottom. (Stop if
you get 0)
3. Repeat this procedure till sufficient precision is reached (usually 2 to 3 places after the radix point).
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Ques 1 - Convert decimal number 75 to binary number.

=(1001011)2

Ques 2- Convert decimal number 142.67 to a binary number.

.67 x 2 = 1.34 1 .34


.34 x 2 = 0.68 0 .68
.68 x 2 = 1.36 1 .36
.36 x 2 = 0.72 0 .72

= (10001110.1010)2

Decimal Number System to Octal Number System Conversion


Steps for the Integer part
1. For the integral part of the number, repeatedly divide the number by 8, and save the remainder.
2. Repeat the process until no further division is possible.
3. Read the remainders from the bottom to top to get the binary number.

Steps for the fractional part


Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

1. Repeatedly multiply the fractional part by 8 and note the integer and fractional part of the product.
2. Repeatedly multiply the fraction part by 8 and note the integer part from top to the bottom. (Stop if
you get 0)
3. Repeat this procedure till sufficient precision is reached (usually 2 to 3 places after the radix point).

Ques 1 - Convert decimal number 104 to octal number.

= (150)8

Ques 2 - Convert decimal number 563.93 to octal number.

.93 x 8 = 7.44 7 .44


.44 x 8 = 0.88 0 .88
.88 x 8 = 7.04 7 .04
.04 x 8 = 0.32 0 .32

= (1063.7070)8

Decimal Number System to Hexadecimal Number System Conversion


Steps for the Integer part
1. For the integral part of the number, repeatedly divide the number by 16, and save the remainder.
2. Repeat the process until no further division is possible.
3. Read the remainders from the bottom to top to get the binary number.

Steps for the fractional part


1. Repeatedly multiply the fractional part by 16 and note the integer and fractional part of the product.
2. Repeatedly multiply the fraction part by 16 and note the integer part. (Stop if you get 0)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

3. Repeat this procedure till sufficient precision is reached (usually 2 to 3 places after the radix point).

Ques 1 - Convert decimal number 600 to hexadecimal number.

= (258)16

Ques 2 - Convert decimal number 49 to hexadecimal number.

= (31)16

Binary Number System to Decimal Number System Conversion


Steps:
1. Multiply each digit with its respective weighted power of 2.
2. Calculate its sum.

Ques 1 - Convert Binary Number 101101 into Decimal Number.


101101
= 1x25 + 0x24 + 1x23 + 1x22 + 0x21 + 1x20
= 32 + 0 + 8 + 4 + 0 + 1
= 45

Ques 2 - Convert Binary Number 110101.010 into Decimal Number.


110101.010
= 1 x 25 + 1 x 24 + 0 x 23 + 1 x 22 + 0 x 21 + 1 x 20 + 0 x 2-1 + 1 x 2-2 + 0 x 2-3
= 32 + 16 + 0 + 4 + 0 + 1 + 0 + 0.25 + 0
= 53.25

Octal Number System to Decimal Number System Conversion


Steps:
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

1. Multiply each digit with its respective weighted power of 8.


2. Calculate its sum.

Ques 1 - Convert Octal Number 156 into Decimal Number.


156
= 1 x 82 + 5 x 81 + 6 x 80
= 64 + 40 + 6
= 110

Ques 2 - Convert Octal Number 78.12172 into Decimal Number.


78.12
= 7 x 81 + 8 x 80 + 1 x 8-1 + 2 x 8-2
= 56 + 8 + 0.125 + 0.03125
= 64.15625

Hexadecimal Number System to Decimal Number System Conversion


Steps:
1. Multiply each digit with its respective weighted power of 16.
2. Calculate its sum.

Ques 1 - Convert Hexadecimal Number 0.87 into Decimal Number.


0.87
= 0 x 160 + 8 x 16-1 + 7 x 16-2
= 0 + 0.5 + 0.02734375
= 0.52734375

Binary Number System to Hexadecimal Number System


There are two ways to convert a binary number to a hexadecimal number:
1. Convert binary number to decimal number, and then convert to hexadecimal number.
2. Using grouping of bits.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Binary Number Hexadecimal Number Binary Number Hexadecimal Number

0000 0 1000 8

0001 1 1001 9

0010 2 1010 A(10)

0011 3 1011 B(11)

0100 4 1100 C(12)

0101 5 1101 D(13)

0110 6 1110 E(14)

0111 7 1111 F(15)

For the integer part, make groups of four bits together starting from the left side of the radix point, and for
the fractional part, make groups of four bits towards the right side of the radix point.
Replace each group with the corresponding hexadecimal number, we get the hexadecimal equivalent of the
given binary number.

NOTE: Add any number of 0’s in the left most bit for integer part, and 0’s in right most bit for fractional
part required to complete the grouping of 4 bits.
Ques 1 - Convert binary number 1000110101110 to hexadecimal number.
Converting Binary Number into Decimal Number:

= (1000110101110)2
= 1 x 212 + 0 x 211 + 0 x 210 + 0 x 29 + 1 x 28 + 1 x 27 + 0 x 26 + 1 x 25 + 0 x 24 + 1 x 23 + 1 x 22 + 1 x 21 +
0 x 20
= 4096 + 0 + 0 + 0 + 256 + 128 + 0 + 32 + 0 + 8 + 4 + 2 + 0
= (4526)10

Converting Decimal into Hexadecimal Number:

= (11AE)16
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Ques 2 - Convert Binary number 10010111101101 into Hexadecimal Number.

0010 0101 1110 1101

2 5 E D

= (25ED)16

Ques 3 - Convert Binary number 101100100.100111 into Hexadecimal Number.

0001 0110 0100 . 1001 1100

1 6 4 9 C
Hence the equivalent Hexadecimal Number is (164.9C)16

Hexadecimal Number System to Binary Number System


A hexadecimal number can be converted to Binary Number through any of the two methods:
1. Converting Hexadecimal Number to Decimal Number, and then converting Decimal Number to
Binary number.
2. Using Conversion Table

Ques 1 - Convert Hexadecimal Number 7B316 to Binary Equivalent Number.


7 B 3 1 6

0111 1011 0011 0001 0110

= 0111 1011 0011 0001 0110

Hence the equivalent binary number is (01111011001100010110)2

Ques 2 - Convert Hexadecimal Number D2.92AB to Binary equivalent Number.

D 2 . 9 2 A B

1101 0010 1001 0010 1010 1011

= 1101 0010 1001 0010 1010 1011

Hence the equivalent binary number is (11010010.1001001010101011)2


Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Binary Number System to Octal Number System


There are two ways to convert a binary number to a hexadecimal number:
1. Convert binary number to decimal number or octal number, and then convert to octal number.
2. Using grouping of bits

Binary Number Octal Number

000 0

001 1

010 2

011 3

100 4

101 5

110 6

111 7

For the integer part, make groups of three bits together starting from the left side of the radix point, and for
the fractional part, make groups of three bits towards the right side of the radix point.

NOTE: Add any number of 0’s in the left most bit for integer part, and 0’s in the right most bit for fractional
part required to complete the grouping of 3 bits.

Ques 1 - Convert binary number 1011011010 to octal number.

001 011 011 010

1 3 3 2
= (1332)8

Octal Number System to Binary Number System


An Octal number can be converted to Binary Number through any of the two methods:
1. Converting Octal Number to Decimal Number, and then converting Decimal Number to Binary
number.
2. Using Conversion Table
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Ques 1 - Convert Octal Number 767 to Binary Equivalent Number.


7 6 7

111 110 111

= 111 110 111

Hence the equivalent binary number is (111110111)2

Ques 2 - Convert Octal Number 4716.15 to Binary Equivalent Number.


4 7 1 6 . 1 5

100 111 001 110 001 101

= (100111001110.001101)2

Hexadecimal Number System to Octal Number System


Steps:
1. Convert each digit of the hexadecimal number into a 4 bit binary equivalent number.
2. Combine 3 bits from the LSB, and convert each group of 3 bits into octal using a table.
Ques 1 - Convert Hexadecimal Number 4B2A into Octal Number.

4 B (11) 2 A (10)

0100 1011 0010 1010

= 0100 1011 0010 1010

=0 100 101 100 101 010

= 000 100 101 100 101 010

= (45452)8

Ques 2 - Convert Hexadecimal Number FE6 into Octal Number.

F E 6
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

1111 1110 0110

= 1111 1110 0110

= 111 111 100 110

= (7746)8

Octal Number System to Hexadecimal Number System


Steps:
1. Convert each digit of the octal number into a 3 bit binary equivalent number.
2. Combine 4 bits from the LSB, and convert each group of 4 bits into hexadecimal using a table.

Ques 1 - Convert Octal Number 2106 into Hexadecimal Number.

2 1 0 6

010 001 000 110

= 010 001 000 110

= 0100 0100 0110

= (446)16
Ques 2 - Convert Octal Number 765 into Hexadecimal Number.

7 6 5

111 110 101

= 111 110 101

=1 1111 0101

= 0001 1111 0101

= (1F5)16
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Encoding Schemes

Encoding is defined as the process to convert data from one form to another. Computers only understand
binary language. There is a need to convert popularly used languages by humans into machine
understandable format. Textual characters (letters, numbers and symbols) are assigned unique numerical
codes. Some of the popular encoding schemes are ASCII, ISCII and Unicode.

ASCII
● ASCII stands for American Standard Code for Information Interchange.
● It was developed in the United States of America by American Standards Association (ASA).
● It is used to represent textual information in computers.
● ASCII uses 7-bits for encoding.
● A maximum of 128 characters may be encoded. Out of these 128 characters, only 95 are printable
including the digits 0-9, lowercase and uppercase characters a-z A-Z and punctuation marks. The
rest of the characters are Control Characters.

ISCII
● ISCII stands for Indian Script Code for Information Interchange (ISCII).
● ISCII is an extended version of the ASCII code and uses 8 bits for encoding.
● It was developed by the Bureau of Indian Standards, India.
● It represents various languages from India.
● Some of the supported scripts are Devanagari (Hindi, Marathi, Sanskrit, Konkani), Gujarati,
Kannada, Punjabi, Malayalam, Telugu, Tamil, Oriya, Bengali-Assamese etc.

Unicode
● Unicode Standard is developed and managed by the Unicode Consortium, which is a non-profit
organization composed of members from Software Development companies such as Apple, Adobe,
Google, IBM, Microsoft etc.
● It aims to provide a universal platform for encoding characters of various languages from the world.
● It assigns a unique Code Point to every character, independent of the CPU architecture/platform, or
the underlying software.
● Unicode covers most writing scripts across the world. As of now, over 161 scripts are included in
the latest version of Unicode.
● Unicode defines two mapping methods: the Unicode Transformation Format (UTF) encodings, and
the Universal Coded Character Set (UCS) encodings.
● Various versions of UTF are UTF-8, UTF-16, UTF-32.
● All UTF encodings map code points to a unique sequence of bytes.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

○ UTF-8 uses 8-bits or 16-bits or 24-bits or 32-bits for each code point.
○ UTF-16 uses 16-bits or 32-bits for each code point.
○ UTF-32 uses 32-bits for each code point.

Q. Convert the following numbers from one number system to another:


1. (945)10 = (?)2 Ans. (1110110001)2
2. (42)10 = (?)8 Ans. (52)8
3. (194)10 = (?)16 Ans. (C2)16
4. (10110)2 = (?)10 Ans. (22)10
5. (745)8 = (?)10 Ans. (485)10
6. (E1A)16 = (?)10 Ans. (3610)10
7. (0010111)2 = (?)16 Ans. (17)16
8. (6FA2)16 = (?)2 Ans. (0110111110100010)16
9. (101111)2 = (?)8 Ans. (57)8
10. (532)8 = (?)2 Ans. (101011010)2
11. (C45D)16 = (?)8 Ans. (142135)8
12. (165)8 = (?)16 Ans. (75)16

Mark the correct choice as


1. Both A and R are true and R is the correct explanation for A.
2. Both A and R are true but R is not the correct explanation for A.
3. A is True but R is False.
4. A is False but R is True.

Q.Assertion (A): NAND and NOR are called the Universal Gates.
Reason (R): OR operator results True(1) if both the inputs are True(1), otherwise False(0).

Answer: A is True but R is False.

Q.Assertion (A): Each symbol in a hexadecimal number system can be represented by a unique 4-bit binary
number.
Reason (R): The hexadecimal number system has 16 unique symbols.

Answer: Both A and R are true and R is the correct explanation for A.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Familiarization with the basics of Python programming

Python Programming Language:


Python is an interpreted, high-level programming language. It was developed by Guido van Rossum. It is
user-friendly and is most popular for its easy-to-use syntax and readable code.

Features of Python
● High-level Programming language.
● Interpreted language (as Python programs are executed by an interpreter)
● Easy to use
● Simple Syntax
● Python programs are generally written with fewer Lines of Code as compared to other
programming languages.
● Case-sensitive. For example, 'NUMBER' and 'number' are treated differently in Python.
● Portable programming language - has ability run programs on many computer architectures and
operating systems.

Syntax: Set of rules for framing a valid statement in a programming language.

Working in Python
● Install Python on the computer (https://www.python.org/downloads/).
● Use Python IDLE (Integrated Development and Learning Environment) for developing python
Programs.

How to Display Data


print( ) function is used to print a message on the screen.

A Simple Hello World Program


print("Hello World")

Modes of working in Python


● Interactive Mode
● Script Mode

Interactive Mode
In Interactive Mode, a python statement is executed in a command-line shell. It provides instant feedback
for each statement while keeping prior statements in memory.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Script Mode
In script mode, the instructions are saved in a file with a '.py' extension and executed from the beginning of
the file. This mode is suitable for creating and running large programs. In script mode, all commands are
stored in the form of a program or a script.

Character Set:
A character set is a collection of valid characters that can be recognized by a language. Python Language
recognises the following characters as valid:
Letters : A-Z, a-z
Digits : 0-9
Special Symbol : + / @ ! - = <> == etc.
Whitespaces : '\n', '\t' ,’ ‘(single space),’ ‘(more than one space)etc.

Tokens (DOLIK)
Tokens are the smallest individual units of a program.

Keywords
Keywords are reserved words with special meaning (known to the interpreter). These can not be used as
identifiers in a program.
>>> import keyword
>>> keyword.kwlist
['False', 'None', 'True', 'and', 'as', 'assert', 'async', 'await', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except',
'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while',
'with', 'yield']
Identifier
A variable, function, class, module, or other objects are identified by a name known as identifier.
Rules for naming an identifier:
1. First character of a variable can be an alphabet(A-Z or a-z) or an underscore(_).
2. Next characters of a variable can be an alphabet(A-Z or a-z), an underscore(_) or a digit.
3. Keywords cannot be used as variables.
4. First character cannot be a digit.
5. Special characters including white spaces are not allowed.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Literals:
Literals are data-items that have a fixed value of a certain data type, such as a number, string, boolean, or
None. They are also known as Constants.
Example :
String literals (Text) : 'Hello World'
Numeric literals (Numbers) : 3.14
Boolean literals (Truth Value) : True/False
None Literal : The None keyword is used to define a null value
or absence of a value. None is different from 0.
Operators
Arithmetic Operators : Arithmetic operators perform mathematical operations like addition, subtraction,
multiplication, division, floor division, exponent and modulus. (+,-,*,/,//,**,%)

Relational Operators:
Relational operators perform comparison between values. An expression having relational operators
evaluates to either True or False. Example >, <, >=, <=, ==, !=

Python Comments
Comments are descriptions about the code. They help other programmers understand the functionality of
the code. Comments are ignored by the Python interpreter, and are only relevant to the programmer.
Single line comment-#, Multi line comment ‘’’Comment’’’ (enclosed in triple single/double quotes)

Variable
Variables refer to an object (data items like int, float, list, dictionary etc) stored in the memory. Value stored
in a variable can be changed during the program execution.
Rules for naming a variable are the same as the rules for naming an Identifier.
Example: pri = 5
Here pri is a variable with value 5.

Valid variable name examples : name, Age, _total


Invalid variable name examples : print value (whitespace not allowed), 1_gender (cannot start
with a digit)

Concept of L Value and R Value


In Python, the l-value refers to the left-hand side of an assignment operator, while the r-value refers to the
right-hand side of an assignment operator.
The l-value is associated with a valid memory location in the computer. The memory location can be
checked by using the id( ) function.
The r-value may be any valid expression which is executed by the interpreter.
Consider the following assignment statement:
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

x = 5+2
In the statement above, the l-value is 'x' as it is on the left-hand side of the = operator.
The r-value is 7 as it is on the right-hand side of the = operator, and is generated by performing the addition
operation on 5 and 2.
The memory location of x may be checked by executing the command id(x).

Knowledge of Data Types


Data Type

Data type represents the type of data a Variable or a Literal is referring to. Each data type has specific
characteristics and operations associated with it. In Python, there are various data types, including number,
string, boolean, list, tuple, and dictionary.

Mutable Objects:
Mutable data objects are objects that can be changed at the same memory location after they are created. It is
possible to add, remove, or modify elements within these data types. Example of mutable data types: List,
Set and Dictionary.

Immutable Objects :
Objects whose values cannot be changed at the same memory location after they are created are called
immutable objects. To change the value, a new object is created. Example of immutable data types: Number
(Integer, Float), String, and Tuple.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Numeric Data Types (Number)


Python has three numeric data types:
1. Integer
2. Float
3. Complex

Integer
● Numbers with No Fractional Part
● Can be Positive or Negative
● In Python 3, the int type has no max limit. Values can be as large as the available memory allows.
● Example 100, 0o55 (octal number), 0x68(hexadecimal number)

Float
● Numbers with Fractional Part
● Example 3.14, .314E01

Complex
● Numbers with both real and imaginary components
● A complex number is represented by "x + yj". Example 10 + 9j

Boolean
A boolean data type can assume one of the two possible values : True or False.
Sequence: Sequence is an ordered collection of items or elements which includes several built-in types
as String, List, and Tuple. Values in the sequence are called elements/items. Each element in a sequence
has a unique index.

String:
● A string is an ordered sequence of characters enclosed in single/double/triple quotes.
● Single Line String : Terminates in a single line. Example – 'This is an example of single line'
● Multi Line String : Does not terminate in a single line. A multiline string may be created using three
quotes
Example -
'''This is a
Multiline
string'''

List:
● List is an ordered sequence data type which can store values of any data type.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

● List is mutable.
● List is enclosed in square brackets [ ]
● Example : [ ] is an empty List,
[5, 6.5, True, 'Hello'] is a List having 5, 6.5, True and 'Hello' as four
elements.

Tuple:
● Tuple is an ordered sequence which can store values of any data type.
● They are immutable, i.e the items of a Tuple cannot be updated after creation.
● Tuple is enclosed in parenthesis ( )
● Example : t=( ) is an empty Tuple
t=(9,) is a Tuple with 9 as an item, a single item has to be followed by comma
t=(8, 5, 9.5, False) is a Tuple with 8, 5, 9.5, False as four items

Dictionary:
● Dictionary in Python stores items in the form of key-value pairs
● Syntax is dict_variable = {key1:value1, key2:value2, …, key-n:value-n}
● Items in a dictionary are enclosed in curly brackets { } and are separated by commas
● In a key-value pair, the key is separated from the value using a colon (:)
● To access any value in the dictionary, specify the key as the index using square brackets [ ].
● Example : { } is an empty dictionary,
D = {'name':'Python','version':'3.7.2', 'OS': 'Windows'}
print(D['version']) # shows 3.7.2 as output
Special Data-type: None
The None data type/keyword is used to indicate absence of a value (No value or Missing Value).
Types of Operators
1. Arithmetic
Operators
2. Relational
Operators
3. Logical Operators
4. Assignment 2.0
Operators
5. Identity Operators
6. Membership
Operators
Arithmetic
operators: Arithmetic
operators perform
mathematical operations such as addition, subtraction, multiplication, division, and modulus.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

In case u have 2**3**2 (its associativity is from right to left ) so first 3**2 will be executed which is 9
and then 2**9.
Modulo Operator
The modulo operator (%) evaluates the remainder of the operation when the operand on the left is divided
by the operand on the right of the modulo operator. a - (a // b) * b
Also the sign of the result in the modulo operation depends on the denominator (divisor).
Example
15 % 7 = 1 10.5 % 3 = 1.5
print(10 % 3) # Output: 1 (10 // 3 = 3, remainder = 1)

print(10 % -3) # Output: -2 (10 // -3 = -4, remainder = -2)

print(-10 % 3) # Output: 2 (-10 // 3 = -4, remainder = 2)

print(-10 % -3) # Output: -1 (-10 // -3 = 3, remainder = -1)

Relational Operators: Relational operators compare the operands. They evaluate to either True or
False.

Logical operators:
Logical operators combine logical values of true or false into a logical expression. They evaluate to either
True or False. There are three basic types of logical operators: 'NOT', 'AND', and 'OR'. Highest
precedence is of NOT and then And and then OR

Assignment operators:
Variables are assigned values using assignment operators.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Identity Operators
Identity operators in Python are used to compare the memory locations of two objects. They help determine
whether two variables reference the same object in memory, rather than just having equal values.

Python provides two identity operators:

1. is → Returns True if two variables reference the same object in memory.


2. is not → Returns True if two variables reference different objects in memory.

Example1:
a = [1, 2, 3]
b = [1, 2, 3]
print(a == b) # True, because their values are the same
print(a is b) # False, because they are different objects in memory
Example2:
x = [10, 20, 30]
y = x # y is assigned the same reference as x
print(x is y) # True, both refer to the same memory location
Example3:
a = 100 c = 1000
b = 100 d = 1000
print(a is b) # True print(c is d) # False (in most cases)
 Python caches small integers (typically from -5 to 256), so a and b reference the same memory location.
 Larger integers (c and d) may not be cached, so they could be stored separately.
Example4:
x = [1, 2, 3]
y = [1, 2, 3]
z=x
print(x == y) # True (values are the same)
print(x is y) # False (different objects)
print(x is z) # True (same object)
Identity Operators Vs Equality Operator
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Membership Operators
The membership operators in Python are 'IN' and 'NOT IN'. They check whether the operand on the left
side of the operator is a member of a sequence (such as a list, tuple or a string) and dictionary on the right
side of the operator.

Example :

x = ['Red', 2, 'Green']
if 'Red' in x:
print("Found")
else:
print("Not Found")

Output will display Found because the item 'Red' is a member of the List x.

Operator Precedence
Associativity of Python Operators

Associativity refers to the order in which operators of the same precedence are
evaluated. The associativity of an operator may be left-to-right or right-to-left.

Evaluation of Expression
1. Evaluate the expression 50 + 20 * 30
Evaluation:
= 50 + (20 * 30) #precedence of * is more than that of +
= 50 + 600
= 650

2. Evaluate the expression 9 + 3 ** 2 * 4 // 3


Evaluation:
= 9 + (3 ** 3) * 4 // 3
= 9 + 27 * 4 // 3 (* and // has left to right associativity)
= 9 + 108 // 3
= 9 + 36
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

= 45

Type conversion
It is the process of converting the value from one data type into another. Python supports two ways of Type
conversion:
● Implicit conversion
● Explicit conversion

Implicit conversion
This type of conversion is performed by Python Interpreter automatically without the user's intervention.
Example:
num1 = 20 # num1 is integer
num2 = 30.5 # num2 is float
sum1 = num1 + num2 # sum1 will use float to avoid
# loss of fractional part during addition
print(sum1)#50.5
print(type(sum1))#float

Explicit Conversion:
This type of conversion is performed by the user manually. It is also known as type-casting. Explicit type-
casting is performed using functions such as int( ), float( ), str( ) etc.
Syntax : new_data_type (expression)
Example
num1 = input("Enter a number : ") # takes a string input by default
var1 = int(num1) #converts string to integer
var1 = var1 * 3
print(var)

Output
Enter a number : 2
6

Input and Output in Python


Data Input:
input( ) function is used for getting input from the user. It returns the input as a String data type by default.
Explicit type casting is required to convert the input string into any other data type if required.

Data Output:
print( ) function is used for displaying output on the screen.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Example-1
num1 = int(input("Enter a Number : ")) # type casting the input from
String to Int
print("The Number is : ", num1)

Example-2
num = int(input("Enter a Number : "))
num_cube = num*num*num
print("The cube is : ",num_cube)

Errors

An error is a problem that occurs in a program. Error sometimes halt the program execution, or produce
unexpected results, and cause the program to behave abnormally.
● Syntax error
● Logical error
● Runtime error

Syntax Error

Syntax are the rules for framing statements in a programming language. Any violations in the rules while
writing a program are known as Syntax Errors. They prevent the code from executing and are detected by
the Python interpreter before the execution of the program begins.
Some of the Common Syntax Errors are
● Parenthesis Mismatch
● Misspelled keyword
● Incorrect Indentation

Logical Error
Logical errors occur when the code runs without any errors, but the output is not as expected. Logical errors
are caused by a problem in the logic of the code.
Example : Average = mark_1 + mark_2 / 2 # incorrect calculation of average marks
Corrected Code : Average = (mark_1 + mark_2 ) / 2
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Runtime Error
A runtime error causes abnormal termination of the program during the execution. Runtime error occurs
when the statement is correct syntactically, but the interpreter cannot execute it.

Example: 'division by zero'

num1 = 5.0
num2 = int(input("num2 = ")) #if the user inputs zero, a runtime error
will occur
print(num1/num2)

Conditional Statements

Conditional statements execute specific blocks of code based on certain conditions. In Python, conditional
statements are implemented using the keywords if, if-else, and if-elif-else.

Terminology
Indentation
Indentation refers to the spaces at the beginning of a line.
Example
if a<5:
print(a)
print('Inner Block')
print('Outside block')

Block of code
A block of code is a set of statements that are grouped together and executed as a single unit. A block of
code is identified by the indentation of the lines of code.

if statement
The if statement is used to execute a block f code only if a certain condition is true.

Syntax:
if <condition>:
Set of Statements

Flow Chart of if-statement


Example-
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

age = int(input("Enter your age : "))


if age>=18:
print('Congratulations')
print('You are allowed to vote')

Program
Write a python Program to find the absolute value of the number entered by the user.
num = int(input("Enter any number : "))
if num>=0:
abs_num = num
else:
abs_num= -num
print(abs_num)

Output
Enter any number : -5
5

Program
Write a python Program to sort three numbers entered by a user.
a = float(input("Enter the first number : "))
b = float(input("Enter the second number : "))
c = float(input("Enter the third number : "))
if a > b:
a,b = b,a
if a > c:
a,c = c,a
if b > c:
b,c = c,b
print (a, "<", b, "<", c)
Output
Enter the first number : 30
Enter the second number : 25
Enter the third number : 20
20.0 < 25.0 < 30.0

if-else statement
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

The if-else statement is used to execute one block of code if a certain condition is true, and another block
of code if the condition is false.
Syntax of if-else
if <condition>:
set of statements
else:
set of statements

Example

age = int(input("Enter your age : "))


if age>=18:
print('Congratulations')
print('You are allowed to vote')
else:
print('You are not allowed to vote')
print('Thanks')

Program
Write a python Program to check if a number entered by a user is divisible by 3.
num=int(input("Enter a number : "))
if num % 3 == 0:
print(num,"is divisible by 3")
else:
print(num,"is not divisible by 3")
Output
Enter a number : 601
601 is not divisible by 3

if-elif-else statement
if-elif-else statement is used to check multiple conditions.
Program
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

per = int(input("Enter Percentage : "))


if per >= 75:
print("Distinction")
elif per >= 60:
print("Grade-A")
elif per >= 50:
print("Grade-B")
elif per >= 40:
print("Grade-C")
else:
print("Grade-D")

Iterative Statement
Iterative statements execute a set of instructions multiple times. 'for' and 'while' loops are the iterative
statements in Python.

while Loop
The while loop repeatedly executes a block of code as long as the specified condition is true.
The while loop is an exit controlled loop, i.e. the user is responsible for exiting the loop by changing the
value of the condition to False. While loop may run infinitely if the condition remains true.
Syntax:
while (condition):
block of statements

Example
Write a Python Program (using a while loop) to Find the Sum of First 10 Natural Numbers.
num=1
sum=0
while (num <= 10):
sum = sum + num
num = num+1
print ("Sum of Natural Numbers : ", sum)

range( ) Function
range( ) is a built-in function that returns a sequence of numbers.
Syntax
range(start, stop, step)
start: The starting value of the sequence (inclusive). If not specified, it defaults to 0.
stop: The ending value of the sequence (exclusive).
step: The difference between two consecutive elements. Its default value is 1.
If step is +ve start <stop,
If step is –ve then start>stop , otherwise the range wont produce anything
The range( ) function can be used in for loops to iterate over a sequence of numbers.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Case-1 Case-2 Case-3 Case-4


x = list(range(5)) x = list(range(3,6)) x = list(range(3,20,2)) x = list(range(0, -9, -1))
print(x) print(x) print(x) print(x)
Output Output Output Output
[0, 1, 2, 3, 4] [3, 4, 5] [3, 5, 7, 9, 11, 13, 15, 17, [0, -1, -2, -3, -4, -5, -6, -7, -
19] 8]

for Loop
The for loop is used to iterate over a sequence (such as a list, tuple, string, etc.) and execute a block of code
for each item in the sequence.

Syntax
for <control_variable> in <sequence>:
Block of code
Example-1 Example-2
list1 = [1,2,3,4,5,6,7,8,9,10] str1 = 'India'
for var1 in list1: for each_character in str1:
print(var1) print(each_character)

Program-1
Write a Python Program (using for loop) to Find the Sum of First 10 Natural Numbers.
sum=0
for num in range(1,11):
sum = sum + num
print ("Sum of Natural Numbers : ", sum)
Output:
Sum of Natural Numbers : 55
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Program-2

Write a Python Program (using for loop) to Find the Sum of First N Natural Numbers where N is entered by the
user.
sum=0
n = int(input("Enter the value of n : "))
for num in range(1, n+1):
sum = sum + num
print ("Sum of Natural Numbers : ", sum)

Output:
Enter the value of n : 20
Sum of Natural Numbers : 210

Program-3
Write a Python Program (using for loop) to find the factorial of a number.
num = int(input("Enter a number: "))
factorial = 1
if num < 0:
print("Sorry, factorial does not exist for negative numbers")
else:
for i in range(1, num + 1):
factorial *= i
print("The factorial of", num, "is", factorial)
Output
Enter a number: 5
The factorial of 5 is 120

Jump Statements in Python


Jump statements in Python control the flow of execution by altering the normal sequence of program execution.
Python provides three jump statements:

1. break – Terminates the loop completely.


2. continue – Skips the current iteration and moves to the next.
3. pass – Does nothing; acts as a placeholder.

Break and Continue Statement


Break Statement: The break statement is used to terminate a loop immediately. It is typically used with
conditional statements.
Continue Statement: The continue statement skips all the remaining statements in the current iteration of
the loop and force the next iteration.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Example :
fruits = ['apple', 'banana', 'cherry']
for x in fruits:
if x == 'banana':
break
print(x)

Example :
Write a program in Python to check if a number entered by a user is a prime number or not.
num = int(input("Enter a number: "))
flag=False
if num > 1:
for i in range(2, num):
if (num % i) == 0:
flag=True
print(num, "is not a prime number")
break
else:
print(num, "is a prime number")

Example :
Write a program in Python to print all natural numbers between 1 and 50 (both inclusive) which are not
multiple of 3.
for x in range(1, 51):
if x % 3 ==0 :
continue
print(x)
Write a program in Python to print all natural numbers from 1 to 10 except 7.
for i in range(1,11):
if i==7:
continue
print(i)

The pass statement in Python is a null operation that acts as a placeholder. It allows you to write syntactically
correct code without executing anything. It is commonly used in functions, loops, or conditional statements where
code will be added later.

for i in range(5):
pass # Placeholder for future logic
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Nested loops

Nested loops refers to a loop within a loop.

Example: Generating a pattern


n = int(input("Enter the number of rows: "))
for i in range(n):
for j in range(i+1):
print("*", end="")
print()

Output
Enter the number of rows: 5
*
**
***
****
*****
Example
for i in range(1, 4):
print("Table for ",i)
for j in range(1, 6):
print(i,'*',j,'=',i * j)
 The outer loop (i) runs from 1 to 3, representing different multiplication tables.
 For each i, the inner loop (j) runs from 1 to 5, multiplying i by j and printing the result.

Module
Module: It is any .py file containing python definitions and statements. Modules are a simple way to structure a
program. Module is anything that has python statements in it or functions or classes etc. To use a module, we
need to import the module. Once we import a module, we can directly use all the functions of that module. A
module is loaded only once, regardless of the number of times it is imported.

Library/Package: Collection of Modules

import Statement:
You can use any Python source file as a module by executing an import statement in some other Python source
file. When the interpreter encounters an import statement, it imports the module in the program. A module is
loaded only once, regardless of the number of times it is imported. This prevents the module execution from
happening over and over again if multiple imports occur.
import statement can be written anywhere in the code not necessarily at the top. It should be written just
above the line where the function is invoked.
3 ways of importing a module:
1. import math 2. from math import sqrt 3. from math import *
math.sqrt(49) sqrt(49) sqrt(49)
can only use sqrt function cos(45)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

import math
This imports the entire math module but requires you to use the module name as a prefix to access its functions and constants.
from math import *
This imports all functions and constants from the math module directly into your namespace, allowing you to use them without the
module prefix.
from math import sqrt, ceil
imports only the specified functions (sqrt and ceil) from the math module directly into your namespace.

Python has a very extensive standard library. It is a collection of many built in functions that can be called in the program as and when
from math import *
required, thus saving programmers time of creating those commonly used functions every time.
• math
• random
This imports all functions and constants from the math mo
• statistics

Ifnamespace, allowing
you use both import math and from mathyou to* inuse
import them
the same without
Python script, the
they will both be module
considered, but they behave differently.
import math
from math import *
from math import sqrt, ceil
print(math.sqrt(16)) # Works (math module is imported)
print(sqrt(16)) # Works (because of from math import *)

imports
Module aliasing:only the specified functions (sqrt and ceil) from th
You can create an alias (nickname) of a module using ‘as’ keyword.
into your namespace.
import <module_name> as <alias_name>
For example:
import random as r
r.random()

Functions in the statistics Module


1. Mean (Average)
 Function: statistics.mean(x)
 Description: Returns the arithmetic mean of a numeric sequence.

print(statistics.mean([11, 24, 32, 45, 51]))

Output: 32.6

2. Median
 Function: statistics.median(x)
 Description: Returns the median (middle value) of a numeric sequence.

print(statistics.median([11, 24, 32, 45, 51]))

Output: 32

3. Mode
 Function: statistics.mode(x)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

 Description: Returns the most frequently occurring value in the sequence.

import statistics
print(statistics.mode([11, 24, 11, 45, 11]))

Output: 11

print(statistics.mode(["red", "blue", "red"]))

Output: 'red'

Functions in math Module


1. Ceiling Function (math.ceil(x))
 Description: Returns the smallest integer greater than or equal to x.

print(math.ceil(-9.7)) # Output: -9
print(math.ceil(9.7)) # Output: 10
2. Floor Function (math.floor(x))
 Description: Returns the largest integer less than or equal to x.

print(math.floor(-4.5)) # Output: -5
print(math.floor(4.5)) # Output: 4
3. Absolute Value (math.fabs(x))
 Description: Returns the absolute (positive) value of x.

print(math.fabs(-6.7)) # Output: 6.7


print(math.fabs(-6)) # Output: 6.0
4. Factorial (math.factorial(x))
 Description: Returns the factorial of x (for positive integers).

print(math.factorial(5)) # Output: 120


5. Modulus (math.fmod(x, y))

 Description: Returns the remainder of x / y with the sign of x.

print(math.fmod(4.9, 4.9)) # Output: 0.0


print(math.fmod(-4.9, 2.5)) # Output: -2.4
6. Greatest Common Divisor (math.gcd(x, y))

 Description: Returns the greatest common divisor (GCD) of x and y.

print(math.gcd(10, 2)) # Output: 2


7. Power (math.pow(x, y))

 Description: Computes x raised to the power y.


Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

print(math.pow(3, 2)) # Output: 9.0


8. Square Root (math.sqrt(x))
 Description: Returns the square root of x.

print(math.sqrt(144)) # Output: 12.0


9. Trigonometric Functions (math.sin(x), math.cos(x))
 Description: Computes sine and cosine values (input in radians).

print(math.cos(0)) # Output: 1.0

Functions in the random Module


1. Generate a Random Float (random.random())
 Description: Returns a random floating-point number between 0.0(including) and 1.0(excluding).

print(random.random())

Output Example: 0.65333522

2. Generate a Random Integer (random.randint(x, y))

 Description: Returns a random integer between x and y (inclusive).

print(random.randint(3, 7)) # Output: 4


print(random.randint(-3, 5)) # Output: 1
3. Generate a Random Number in a Range (random.randrange(y))
 Description: Returns a random integer from 0 to y-1.

print(random.randrange(5)) # Output: 4
4. Generate a Random Number in a Given Range (random.randrange(x,
y))

 Description: Returns a random integer from x to y-1.

print(random.randrange(2, 7)) # Output: 2


5. The random.uniform(a, b) function generates a random floating-point number between a and b, including a
and excluding b(it includes b only if it is rounded to 0 decimal places)
Built-in functions
Built-in functions are the ready-made functions in Python that are frequently used in programs. These functions do not require
any module to be imported
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

String
String: String is a sequence of UNICODE characters. A string can be created by enclosing one or more
characters in single, double or triple quotes (' ' or '' '' or ''' ''').
Example
>>> str1 = 'Python'
>>> str2 = "Python"
>>> str3 = '''Multi Line
String'''
>>> str4 = """Multi Line
String"""

Whitespace Characters: Those characters in a string that represent horizontal or vertical space.
Example: space (' '), tab ('\t'), and newline ('\n')
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Indexing in Strings
● Indexing is used to access individual characters in a string using a numeric value.
● The index of the first character (from left) in the string is 0 and the last character is n-1
● The index can also be an expression including variables and operators but the expression must
evaluate to an integer
● Forward indexing, also known as positive indexing, starts from left to right, with the first character
having index 0, second character having index 1, and so on.
● Backward indexing, also known as negative indexing, starts from right to left, with the last character
having index -1, second-last character having index -2, and so on

Example
>>> str1 = 'Python' >>> str1 = 'Python'
>>> str1[0] >>> str1[2+3]
'P' 'n'

Slicing
Slicing is the process of extracting a substring from a given string. It is done using the operator ':'.
Syntax : string[start:end:step].
start : 'start' is the starting index of the substring (inclusive).
end : 'end' is the ending index of the substring (exclusive)
step : 'step' is the difference between the index of two consecutive elements. Default value is 1
Case-1 Case-2 Case-3 Case-4
print(str1[:3]) print(str1[1:4]) print(str1[0:5:2]) print(str1[-5:-1])

Output Output Output Output


PYT YTH PTO YTHO
Case-5 Case-6 Case-7
print(str1[-1:-4]) print(str1[:-5:- print(str1[:-5])
1])
Output Output
'' Output P
NOHT
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

String is Immutable
A string is an immutable data type. It means that the value (content) of a string object cannot be changed
after it has been created. An attempt to do this would lead to an error.
Example
>>> str1 = 'Python'
>>> str1[1]='Y'
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: 'str' object does not support item assignment

Traversal of a String
Accessing the individual characters of string i.e. from first
1. Using only for Loop
str1 = 'Computer'
for ch in str1:
print(ch, end=' ')

2. Using For Loop and range function


str1 = 'Computer'
for ch in range(0,len(str1)):
print(str1[ch],end=' ')

3. Using while Loop


str1 = 'Computer'
i = 0
while i < len(str1):
print(str1[i],end = ' ')
i+= 1
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

String Operations
We can perform various operations on string such as concatenation, repetition, membership and slicing.

Concatenation
Operator : +
>>> str1 = "Python"
>>> str2 = "Programming"
>>> str1 + str2
'PythonProgramming'

Repetition
Use : To repeat the given string multiple times.
Repetition operator : *
>>> str1 = "Hello "
>>> str1*2*3 # str1*5.0 will give error as it can’t be float
'Hello Hello Hello Hello Hello Hello'

Membership
Membership is the process of checking whether a particular character or substring is present in a sequence
or not. It is done using the 'in' and 'not in' operators.
Example
>>> str1 = "Programming in Python"
>>> "Prog" in >>> "ming in" >>> "Pyth " >>> "Pyth " not in str1
str1 in str1 in str1 True
True True False

String Methods/Functions

Python has several built-in functions that allow us to work with strings
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

len() capitalize()
Returns the length of the given string Returns the string by converting the first character
>>> str1 = 'Hello World!' of a string to capital (uppercase) letter and rest in
>>> len(str1) lowercase.
12 str1 = "python Programming for
11th"
str1.capitalize()
'Python programming for 11th'
title() lower()
Returns the string by converting the first letter of Returns the string with all uppercase letters
every word in the string in uppercase and rest in converted to lowercase
lowercase >>> str1 = "PYTHON PROGRAMMING for
>>> str1 = "python ProGramming 11th"
for 11th" >>> str1.lower()
>>> str1.title() 'python programming for 11th'
'Python Programming For 11Th'
upper() count()
Returns the string with all lowercase letters Returns number of times a substring occurs in the
converted to uppercase given string. If it does not occur then returns 0
>>> str1 = "python programming >>> str1 = "python programming for
for 11th" 11th"
>>> str1.upper() >>> str1.count("p")
'PYTHON PROGRAMMING FOR 11TH' 2
>>> str1.count("pyth")
1

find(substr,beg,end) index(substr,beg,end)
Returns the index of the first occurrence of Same as find() but raises an exception if the
substring in the given string. The beg is(0) and substring is not present in the given string. The beg
end is len(s) by default and end not included. If is(0) and end is len(s) by default and end not
the substring is not found, it returns -1 included.
>>> str1 = "python programming >>> str1 = "python programming for
for 11th" 11th"
>>> >>> str1.index('r')
str1.find('r')#8 8
>>> str1.find('u')#-1 >>> str1.index('u')
>>> s="pujau" ValueError: substring not found
>>> s.find('u',2)#4 >>> s="pujau"
>>> s.index('u',2)#4
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

isalnum() isalpha()
The isalnum() method returns True if all Returns True if all characters in the string are
characters in the string are alphanumeric (either alphabets, Otherwise, It returns False
alphabets or numbers). If not, it returns False. >>> 'Python'.isalpha()
>>> str1 = 'HelloWorld2' True
>>> str1.isalnum() >>> 'Python 123'.isalpha()
True False
>>> str1 = 'Hello World2'
>>> str1.isalnum()
False

isdigit() isspace()
returns True if all characters in the string are Returns True if has characters and all of them are
digits, Otherwise, It returns False white spaces (blank, tab, newline)
>>> '1234'.isdigit() >>> str1 = ' \n \t'
True >>> str1.isspace()
>>> '123 567'.isdigit() True
False >>> str1 = 'Hello \n'
>>> str1.isspace()
False

islower() isupper()
returns True if the string has letters all of them returns True if the string has letters all of them are
are in lower case and otherwise False. in upper case and otherwise False.
>>> str1 = 'hello world!' >>> str1 = 'HELLO WORLD!'
>>> str1.islower() >>> str1.isupper()
True True
>>> str1 = 'hello 1234' >>> str1 = 'HELLO 1234'
>>> str1.islower() >>> str1.isupper()
True True
>>> str1 = 'hello ??' >>> str1 = 'HELLO ??'
>>> str1.islower() >>> str1.isupper()
True True
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

strip() lstrip()
It returns a string after removing leading and trailing Returns the string after removing Leading
characters from a string. By default, it removes characters only from the left (beginning). By default
whitespace, but you can specify other characters as removes white space characters.
well. >>> str1 = ' Hello World! '
>>> str1 = ' Hello World! ' >>> str1.lstrip()
>>> str1.strip() 'Hello World! '
'Hello World!'
>>>text = "###Hello, World!!!###"
>>>result = text.strip("#!")
'Hello, World'
rstrip() replace(oldstr,newstr,no_of_times)
Returns the string after removing trailing It returns a string after replacing a particular
characters only from the right (ending). By default substring in a string with another substring. By
removes white space characters.
deault no_of_times is max
>>> str1 = ' Hello World! '
>>> str1 = 'Hello World!'
>>> str1.rstrip()
>>> str1.replace('o','*')
' Hello World!'
'Hell* W*rld!'
>>>str1.replace('o','*',1)
'Hell* World!'
istitle() split()
It returns True if the string is in titled case i.e first Returns a list of words delimited by the specified
letter of every word is capital and rest in substring. If no delimiter is given then words are
lowercase letter.
separated by whitespaces.
>>> s="Puja Gupta"
>>> s.istitle() string.split(separator, maxsplit)
True  separator (optional): The delimiter on which the
split occurs (default: whitespace).
partition()  maxsplit (optional): Maximum number of times
The partition() function is used to split a string the string will be split
into three parts based on a specified separator. It >>> str1 = 'India is a Great Country'
always return a tuple and will have 3 portions >>> str1.split()
>>> str1 = 'India is a Great Country' ['India','is','a','Great', 'Country']
>>> str1.partition('is') >>> str1 = 'an Indian -Great Country'
('India ', 'is', ' a Great Country') >>> str1.split('a')
If the separator is not found then returns the ['', 'n Indi', 'n -Gre', 't Country']
whole string with 2 empty strings
>>> str1.partition('are') text = "apple banana cherry date"
result = text.split(" ", 2) # Max 2
('India is a Great Country',' ',' ') ['apple', 'banana', 'cherry date']
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

startswith(substring,beg,end) join()
startswith() function is used to check whether a str.join(sequence)
returns a string in which the string elements of
given string starts with a particular substring. The
beg is(0) and end is len(s) by default and end not sequence have been joined by str separator. if few
included. of the members of the sequence are not string, error
is generated.
endswith(substring,beg,end) >>> '*-*'.join('Python')
endswith() function is used to check whether a 'P*-*y*-*t*-*h*-*o*-*n'
given string ends with a particular substring. The >>> '*-
beg is(0) and end is len(s) by default and end not *'.join(['Ajay','Abhay','Alok'])
included. 'Ajay*-*Abhay*-*Alok'
>>> '*-
str = "Python Programming" *'.join(['Ajay','Abhay',123])
print(str.startswith("Pyt")) Traceback (most recent call last):
print(str.startswith("Pro",7)) File "<stdin>", line 1, in
print(str.endswith("age")) <module>
print(str.endswith("uage")) TypeError: sequence item 2:
print(str.startswith("Pyts")) expected str instance, int found

Output
True
True
True
True
False
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

LIST IN PYTHON
● List is a sequence i.e. sequenced data type.
● List can store multiple values in a single object.
● List is an ordered sequence of values/elements.
● Elements of a list are enclosed in square brackets [ ], separated by commas.
● List are mutable i.e. values in the list can be modified.
● The elements in a list can be of any type such as integer, float, string, objects etc.
● List is heterogeneous type i.e. collection of different types.
L = [5, 8, 6, 1, 9]

Length = 5 (Number of elements)

What is a sequence?
Sequence is a positional ordered collection of items, which can be accessed using index. Examples of
sequence are List, Tuple, String etc.

List is Mutable
In Python, lists are mutable. It means that the contents of the list can be changed after it has been created.

>>> L = [1, 5, 7, 2]

>>> L

[1, 5, 7, 2]

Change the second element of list from 5 to 8

>>> L[1]=8

>>> L

[1, 8, 7, 2]
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

How to create a list in Python:


Using list( ) function:
list ( ) function is useful to create or convert any iterable into list. For example, create a list from string.
L=[]# empty list will be created
L=list() # empty list will be created
L=list("Hello")#['H', 'e', 'l', 'l', 'o']
Indexing in List:
● Index means the position of an item in an iterable type.
● Indexing can be positive or negative.
● Positive Indexes start from 0 and are positioned like 0, 1, 2,
….
● The index of the first element is always 0 and the last
element is n-1 where n is the total number of elements in the list.
● Negative index starts from the last element and is labeled as -1, -2, -3, ……

For example:

>>> L = [5, 8, 6, 1, 9]

>>> L[0]

>>> L[3]

>>> L[-1]

>>> L[-4]

>>> L[5]

IndexError: list index out of range


Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

If we try to access the element from outside the index range then the interpreter raises an IndexError.

LIST OPERATIONS
Slicing in List:
Note: Slicing never gives IndexError even if it is invalid range
Object_name[start : stop : step] # start is included and stop is excluded.
● Default value of start is 0, stop is len(l) (if step is +ive)
● Default value of start is -1 and –(len(l)+1) if step is –ive
● Default value of step is 1
● If step is +ve then slicing is performed from left to right,if the step is -ve then slicing is performed from right
to left. For Ex:

>>> L[1:4:1]

[8, 6, 1]

If we give an index out of range then it is considered as the default value.

>>> L[1:5:2]

[8, 1]

Start index is not given then it consider as default value

>>> L[:5:2]

[5, 6, 9]

Start, stop and interval is not given then they consider as default value
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

>>> L[: :]

[5, 8, 6, 1, 9]

If start>=stop and interval is positive the slicing will return empty list

>>> L[4:2]

[]

If the interval is negative then slicing is performed from right to left. For Ex:

Access the list element where start index is 4 and stop index is 1 in reverse order
>>>L[4:1:-1]
[9, 1, 6]

Access the list element where start index is 5 and stop index is 0 with interval 2 in reverse order
>>>L[5:0:-2]
[9, 6]

>>>L[-1:-4:-1]
[9, 1, 6]

>>>L[-1:-4:-1]
[9, 1, 6]

Access the list in reverse order


>>>L[: : -1]
[9, 1, 6, 8, 5]
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

>>> L[-1:2:-1]
[9, 1]

Concatenation of two lists:


Concatenation is the process of joining the elements of a particular list at the end of another list
>>> L1=[1,2,3]
>>> L2=['a','b','c']

Using concatenation operator (+)


>>> L1+L2
[1, 2, 3, 'a', 'b', 'c']

Repetition Operator
● The repetition operator makes multiple copies of a list and joins them all together. The general format
is: list * n,
where ‘list’ is a list and n is the number of copies to make.
>>> L=[0]*3
>>> L
[0, 0, 0]
In this example, [0] is a list with one element 0, The repetition operator makes 3 copies of this list and joins
them all together into a single list.

>>> L = [1, 2, 3]*3


>>> L
[1, 2, 3, 1, 2, 3, 1, 2, 3]
In this example, [1, 2, 3] is a list with three elements 1, 2 and 3. The repetition operator makes 3 copies of
this list and joins them all together into a single list.

Membership operator
Membership operator is used to check or validate the membership of an element in the list or sequence.
There are two types of membership operators
1. in operator: It return True if a element with the specified value is present in the List
2. not in operator: It return True if a element with the specified value is not present in the List
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Examples:
L = [5,"India", 8, 6, 1]
>>> 5 in L
True

>>> "India" in L
True

>>> 9 in L
False

>>> 9 not in L
True

Traversing a list using loops


Traversing a list means to visit every element of the list one by one. One of the most common methods to
traverse a Python list is to use a for loop.

Ex: Write a program in Python to traverse a list using for loop.


L = [5, 8, 9, 6, 1]
for i in L:
print(i)
Output:
5
8
9
6
1

Using range() method:


We can traverse a list using range() method
L = [5, 8, 9, 6, 1]
for i in range(len(l)):
print(L[i])

Output:
5
8
9
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

6
1

Built-in functions/methods of list:


1: len():
It returns the total number of elements in the list i.e. length of the list.
For ex:
>>> L = [8, 6, 3, 9, 1]
>>> len(L)
5
It returns the total numbers of elements in the list i.e. 5

2: list()
list() is a function used to convert an iterable object into a list. For Ex:
>>> S="Python"
>>> L=list(S)
>>> L
['P', 'y', 't', 'h', 'o', 'n']
In the above example, a string S is converted into the List.

3: append()
appends an element at the end of the list. The length of the list increases by 1.
list.append(item)
append() adds a single element to the end of a list.
The length of the list increases by one.
The method doesn’t return any value
>>> L = [4,5,9,2,6]
>>> L.append(1)
>>> L
[4, 5, 9, 2, 6, 1]

A list is an object. If we append another list onto a list, the parameter list will be a single object at the end
of the list.
>>> L1=[1,2,3]
>>> L2=[4,5,6]
>>> L1.append(L2)
>>> L1
[1, 2, 3, [4, 5, 6]]
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

4: extend()
extend() is a method of list, which is used to merge two lists. It is to add more than one element in a list.
extend() iterates over its argument and adds each element at the end of the list. The length of the list increases
by a number of elements in its argument.

list.extend(iterable)
Argument of extend() method is any iterable (list, string, set, tuple etc.)
The length of the list increases by a number of elements in its argument.
The method doesn’t return any value
>>> L1=[1,2,3]
>>> L2=[4,5,6]
>>> L1.extend(L2)
>>> L1
[1, 2, 3, 4, 5, 6]
A string is iterable, so if you extend a list with a string, you’ll append each character as you iterate over
the string.
>>> L1=[1,2,3]
>>> S="Python"
>>> L1.extend(S)
>>> L1
[1, 2, 3, 'P', 'y', 't', 'h', 'o', 'n']

Other Ways to Extend a List


You can also append all elements of an iterable to the list using:
Using + operator Using List slicing
a = [1, 2] a = [1, 2]
b = [3, 4] b = [3, 4]
a += b a[len(a):] = b
#'+=' # Here id are same # Here id of a list will be same
#a=a+b #Here id are different # Output: [1, 2, 3, 4]
# Output: [1, 2, 3, 4] print('a =', a)
print('a =', a)

5: insert()
append() and extend() method is used to add an element and elements of an iterable object respectively at
the end of the list. If we want to add an element at any index then we can use insert() method of list. If the
the index >=len(l) then it will be added at last and if the –ve index< -len(s)then it will be added at
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

beginning.
Syntax: list_name.insert(index, element)
>>> L=[1,2,3]#Insert element 8 at index 1 i.e. at 2nd position
>>> L.insert(1,8)
[1, 8, 2, 3]
>>> L.insert(99,5)
[1, 2, 3,5]
>>> L. insert(-7,5)
[5,1, 2, 3]

6: count()
count() method returns how many times a given element occurs in a List i.e. it returns the frequency of an
element in the list. If the element does not occur then it returns 0.
Syntax: list_name.count(element)
>>> L = [1, 2, 8, 9, 2, 6, 2]
>>> L
[1, 2, 8, 9, 2, 6, 2]
>>> L.count(2)
3
7: index()
index() is a method of the list, which returns the index of the first occurrence of the element.
Syntax: list_name.index(element, start, end)
element – The element whose index for first occurrence is to be returned.
start (Optional) – The index from where the search begins. Start is included.
end (Optional) – The index from where the search ends. End is excluded.
>>> L = [5, 8, 9, 6, 1, 8]
>>> L.index(8) # looks for 8 from index no 0 till end
1
>>> L.index(8,2) # looks for 8 from index no 2 till end
5
>>> L.index(8,2,6) # looks for 8 from index no 2 till index no 5 as last index not included
5
>>> L.index(8,2,5)
ValueError: 8 is not in list
>>> L.index(8,2,7)
5

8: remove()
remove() method of list is used to delete the first occurrence of the given element. If the given element is
not exist in the list then it will give the ValueError
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Syntax: list_name.remove(element)
>>> L
[5, 8, 9, 6, 1, 8]
>>> L.remove(8)
>>> L
[5, 9, 6, 1, 8]
>>> L.remove(4)
ValueError: list.remove(x): x not in list

9: pop()
Syntax: list_name.pop(index)
Index is optional. If index is not given, pop() method of list is used to remove and return the last element
of the list, otherwise remove and return the element of the given index. If Index is out of range then it
gives IndexError.
>>> L = [5, 8, 9, 6, 1]
>>> L
[5, 8, 9, 6, 1]
#remove the last element from the list
>>> L.pop()
1
>>> L
[5, 8, 9, 6]
#remove the element from the list whose index is 1
>>> L.pop(1)
8
>>> L
[5, 9, 6]
>>> L.pop(4)
IndexError: pop index out of range

10: reverse()
reverse() method of the list used to reverse the order of the elements of the list. It does not return anything rather
makes the changes in the list itself.
Syntax: list_name.reverse()
>>> L = [5, 8, 9, 6, 1]
[5, 8, 9, 6, 1]
>>> L.reverse()
[1, 6, 9, 8, 5]

11: sort()
sort() method can be used to sort List in ascending(default), descending, or user-defined order. It sort the
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

existing list. IT does not return any list rather makes changes in the list.
Syntax: List_name.sort(reverse=True/False)
>>> L = [5, 8, 9, 6, 1]
>>> L
[5, 8, 9, 6, 1]
#sort the elements of the list in ascending order
>>> L.sort()
>>> L
[1, 5, 6, 8, 9]
#sort the elements of the list in descending order
>>> L.sort(reverse=True)
>>> L
[9, 8, 6, 5, 1]

12: sorted()
sorted() is a built-in function of list. sorted() function returns a sorted list in ascending order by default. It
does not sort or change the existing list.
>>> L = [5, 8, 9, 6, 1]
>>> L
[5, 8, 9, 6, 1]
>>> sorted(L)
[1, 5, 6, 8, 9]
>>> L
[5, 8, 9, 6, 1]
#Create a list which contains the element of another list in descending order.
>>> L1=sorted(L, reverse=True)
>>> L1
[9, 8, 6, 5, 1]

13: min()
min() function of the list is used to find the minimum element from the list.
>>> L = [5, 8, 1, 6, 9]
>>> min(L)
1
# If the elements of the list are string then min() returns the minimum element based on the ASCII values.
>>> L=['a','D','c']
>>> min(L)
'D'

14: max()
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

max() function of the list is used to find the maximum element from the list.
>>> L = [5, 8, 1, 6, 9]
>>> max(L)
9
# If the elements of the list are string then max() returns the maximum element based on the ASCII
values.
>>> L=['ananya','De','axe',’Df’]
>>> max(L)
'axe'

15: sum()
sum() is a function of list, which returns the sum of all elements of the list.
>>> L = [5, 8, 9, 6, 1]
>>> sum(L,0)#second argument is by default 0 which will be added to the list elements
29
16. clear()
It removes all the elements from the list and make it an empty list.
L=[1,2,3]
l.clear() # []

17. del statement


l=[1,2,3,4,5]
del l[0]
l # [2, 3, 4, 5]
del l[0:3]
l# [5]
Nested List:
A list within another list is called the nested list i.e. list of list.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

>>> L = [1, [2, 3, 4], 'Python', 3.5]


>>> L[1]
[2, 3, 4]
>>> L[1][0]
2
>>> L[2]
'Python'
>>> L[2][2]
't'

Updating a List-
Since it is of mutable data type , you can make changes to the list.
>>> l=[1,2,3,4,5]
>>> l[0]=11 # single element update
>>> l
[11, 2, 3, 4, 5]
>>> l[1:3]=5 # if u are giving a slicing of list to be update the right hand side should be a list
ERROR - TypeError: can only assign an iterable
>>> l[1:3]=[9,10,11,13]
>>> l
[11, 9, 10, 11, 13, 4, 5]
>>> l[0:0]=[6] # it is like inserting an element 6 at the index 0
>>> l
[6, 11, 9, 10, 11, 13, 4, 5]

Copying a list:
If you make a copy of the list with copy() method or slicing or using built-in function list() then their ids will be different
whereas making copy by writing a=b ( will have same ids for a and b list)
Id of both list A and B are Id of both list A and B are Id of both list A and B are Id of both list A and B are
different. So change in A different. So change in A different. So change in A same. So change in A will
will not affect B and vice will not affect B and vice will not affect B and vice affect B and vice versa.
versa. versa. versa.
>>> A=[1,2,3,4] >>> A=[1,2,3,4] >>> A=[1,2,3,4] >>> A=[1,2,3,4]
>>> B=A.copy() >>> B=A[:] >>> B=list(A) >>> B=A
>>> A+=[9,6,7] >>> A+=[5,6,7] >>> A+=[5,6,7] >>> A+=[5,6,7]
>>> A >>> A >>> A >>> A
[1, 2, 3, 4, 9, 6, 7] [1, 2, 3, 4, 5, 6, 7] [1, 2, 3, 4, 5, 6, 7] [1, 2, 3, 4, 5, 6, 7]
>>> B >>> B >>> B >>> B
[1, 2, 3, 4] [1, 2, 3, 4] [1, 2, 3, 4] [1, 2, 3, 4, 5, 6, 7]

Comparing a List:
We can apply all the relational operators to compare two lists if they are of comparable types, otherwise Python
gives an error. While comparing two lists, it checks element-by-element comparison. If the corresponding
elements are equal, it goes on to the next element and so on until it finds the element that differs.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Note: For comparison operation, Python ignores the type of the elements and compares values only.
l=[2.0,3.0]
a=[2,3]
l==a #True
b=[2.1,3.0]
a==b #False

Comparison Result Reason

[1,2,3,4] < [4,5] True 1 < 4 True

[1,2,3,4] < [1,5] True 2 < 5 True

[1,2,3,4] > [1,2,0,4] True 3 > 0 True

[‘a’,’b’,’c’] < [‘a’,’d’,’c’] True ‘b’ < ‘d’

List Comprehension
This is a way to create a new list using an existing list.
Syntax:
NewList = [ expression for variable in iterable object if condition == True ]

Example1:
list1=[x**2 for x in range(10)]
print(list1)
output:
[ 0,1,4,9,16,25,36,49,64,81]

Example 2:
x=[z**2 for z in range(10) if z>4]
print(x)
Output: [25, 36, 49, 64, 81]
Example 3:
x=[x ** 2 for x in range (1, 11) if x % 2 == 1]
print(x)
Output: [1, 9, 25, 49, 81]
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

TUPLE IN PYTHON:

● Tuple is a sequence data type.

● Tuple is a heterogenous collection of data.


● Tuple is an immutable data type i.e. it cannot be changed after being created.
● Tuple is denoted by parenthesis i.e. ( ) and the elements of the tuple are comma separated.

How to create a tuple in Python:


#Create a tuple with three integer element
>>> T= (8, 6, 7)
>>> T
(8, 6, 7)
>>> type(T)
<class 'tuple'>

#Create a tuple with a single element. Comma must be used after the element, parenthesis are optional.
>>> T= (5,)
>>> T
(5,)
>>> type(T)
<class 'tuple'>

#Without parenthesis comma separated values are also treated as tuples.


>>> T=5,
>>> T
(5,)

#Without a comma, a single element is not tuple.


>>> T = (5)
>>> T
5
>>> type(T)
<class 'int'>

#Following is string, not tuple


>>> T= ('Hello')
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

>>> T
'Hello'
>>> type(T)
<class 'str'>
>>> T= (5, 9.8,'Hello', 9)
>>> T
(5, 9.8, 'Hello', 9)

#Create a tuple without parentheses.


>>> T=1, 2, 3, 4
>>> T
(1, 2, 3, 4)
>>> type(T)
<class 'tuple'>

Tuple Indexing

>>> T= (5, 8, 6, 1, 9)
>>> T
(5, 8, 6, 1, 9)
>>> T[2]
6
>>> T[-3]
6
>>> T[6]
IndexError: tuple index out of range
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Tuple Operations
Concatenation
Using + operator
>>> T1=(1,2,3)
>>> T2=(4,5,6)
>>> T=T1+T2
>>> T
(1, 2, 3, 4, 5, 6)

Repetition
Tuple can be created using the repetition operator, *.
The repetition operator makes multiple copies of a tuple and joins them all together. The general format
is: T * n,
Where T is a tuple and n is the number of copies to make.
>>> T= (1, 2)*3
>>> T
(1, 2, 1, 2, 1, 2)
In this example, (1, 2) is a tuple with two elements 1 and 2, The repetition operator makes 3 copies of this
tuple and joins them all together into a single tuple.

Membership
Membership operator is used to check or validate the membership of an element in the tuple or sequence.
There are two types of membership operators
1. in operator: It return True if a element with the specified value is present in the tuple
2. not in operator: It returns True if an element with the specified value is not present in the tuple.
Examples:
T = (5,"India", 8, 6, 1)
>>> 5 in T
True
>>> "India" in T
True
>>> 9 in T
False
>>> 9 not in T
True
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Slicing in Tuple:
Note: Slicing never give IndexError
Syntax:
Object_name[start : stop : interval]
● Here start, stop and interval all have default values.
● Default value of start is 0, stop is n (if interval is +ive) and -1 if interval is –ive
● Default value interval is 1
● In slicing start is included and stop is excluded.
● If interval is +ive then slicing is performed from left to right. For Ex:

>>> T[1:4:1]
(8, 6, 1)

If we give an index out of range then it is considered as the default value.


>>> T[1:5:2]
(8, 1)

If start index is not given then it consider as default value


>>> T[:5:2]
(5, 6, 9)

If start>=stop and interval is positive the slicing will return empty list
>>> T[4:2]
()

If interval is negative slicing performed from right to left


Access the list element where start index is 4 and stop index is 1 in reverse order
>>>T[4:1:-1]
(9, 1, 6)

Access the list element where start index is 5 and stop index is 0 with interval 2 in reverse order
>>>T[5:0:-2]
(9, 6)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

>>>T[-1:-4:-1]
(9, 1, 6)
>>>T[-1:-4:-1]
(9, 1, 6)
Built-in functions/methods of tuple:
1: len():
len() is a function of tuple.
It returns the total number of elements in the tuple i.e. length of the tuple.
For ex:
>>> T = (8, 6, 'Hello', 9, 1)
>>> len(T)
5
It returns the total numbers of elements in the tuple i.e. 5

2: tuple()
tuple() is a function used to convert an object into tuple.
For Ex:
>>> S="Python"
>>> T=tuple(S)
>>> T
('P', 'y', 't', 'h', 'o', 'n')
In the above example, a string S is converted into the tuple.

3: count()
count() is a function used to count() the number of occurrences of an element in the tuple.
>>> T = (1, 2, 3, 2, 4, 2, 5)
>>> T.count(2)
3

4: index(element,start=0,beg=len(t))
It returns the index of the first occurrence of the element
>>> T = (1, 2, 3, 2, 4, 2, 5)
>>> T.index(2)
1

5: sorted()
It is a built-in function to sort the elements of Tuple.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

It return a new list of sorted elements of the tuple in ascending order (by default)
It does not change the existing tuple.

T = (1, 2, 3, 2, 4, 2, 5)
print(sorted(T))
Output:
[1, 2, 2, 2, 3, 4, 5]

For sort the elements in descending order use reverse = True


T = (1, 2, 3, 2, 4, 2, 5)
print(sorted(T, reverse=True))
Output:
[5, 4, 3, 2, 2, 2, 1]

6: min()
It is a built-in function of the tuple. It returns the smallest element from the tuple.
T = (5, 8, 3, 9, 6, 4)
print(min(T))
Output:
3

7: max()
It is a built-in function of the tuple. It returns the largest element from the tuple.
T = (5, 8, 3, 9, 6, 4)
print(max(T))
Output:
9

8: sum()
It is a built-in function of the tuple. It returns the sum of all elements of the tuple.
T = (5, 8, 3, 9, 6, 4)
print(sum(T))
Output:
35

Nested Tuple
A nested tuple is a tuple that has been placed inside of another tuple.
>>> T = (5, (8, 6, 4), 3, 9)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

>>> T
(5, (8, 6, 4), 3, 9)
>>> T[1]
(8, 6, 4)
>>> T[1][1]
6

A list can be an element of a tuple. It you make changes to that list it will allow as list is mutable data type
>>> T = (5, [8, 6, 4], 3, 9)
>>> T#(5, [8, 6, 4], 3, 9)
>>> T[1][2]= 77
>>> T#(5, [8, 6, 77], 3, 9)
>>> T[1].append([88,99])
>>> T#(5, [8, 6, 77, [88, 99]], 3, 9)

List is a mutable type. So we can change the value of the list, even if it is nested inside the tuple.
Tuple Unpacking
Access tuple’s individual elements using unpacking Another concept that you may have often heard using
tuples is tuple unpacking, which can allow access to individual elements. Some examples are given below.
Note: The number of items in the tuple should be equal to the number of the variables in the unpacked tuple.

# tuple unpacking is also possible


my_tuple =3,4,"abc"
print(type(my_tuple)) # tuple
a,b,c = my_tuple
print(a) #3
print(b) # 4.6
print(c) # dog

Iterating Through a Tuple


We can use a for loop to iterate through each item in a tuple.
Using FOR Loop Using Range in For Loop Using WHILE Loop
t=(1,2,3) t=(11,22,33) t=(11,22,33)
for i in t: for i in range(len(t)): i=0
print(i) print(i,t[i]) while i <len(t):
print(i,t[i])
i+=1
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

DICTIONARY IN PYTHON
Introduction to Dictionary:
 Dictionary is a mapping data type.
 Dictionary is a mutable data type i.e. it can be changed after being created.
 Dictionary is denoted by curly braces i.e. {}
 Dictionaries are used to store data values in key : value pairs
 Keys of the dictionary are unique and of immutable data type.

>>> D = {1:10, 2:20, 3:30}


>>> D
{1: 10, 2: 20, 3: 30}

Accessing items in a dictionary using keys:

We can access the values of any key from the dictionary using following syntax:
Dict_Name[key_name]
>>> D[1]
10
>>> D[2]
20
>>> D[3]
30

If the key is duplicated at the time of dictionary creation then the value assigned at the last will be stored in
the key.
>>> D = {1:10, 2:20, 3:30, 1:40, 4:50}
>>> D
{1: 40, 2: 20, 3: 30, 4: 50}
>>> D = {'A':10,'B':20,'C':30}
>>> D.get('A')
10
Mutability of a dictionary:
Mutability means the values of a key can be updated in the dictionary.
Dict_Name[Key_Name] = New_Value
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

>>> D = {'A':10,'B':20,'C':30}
Change the value of key ‘A’ from 10 to 15.
>>> D['A']=15
>>> D
{'A': 15, 'B': 20, 'C': 30}

Adding a new item in dictionary:


Adding an item to the dictionary is done by using a new index key and assigning a value to it:
Dict_Name[New_Key_Name] = Value
>>> D = {1:10, 2:20, 3:30}
>>> D
{1: 10, 2: 20, 3: 30}
>>> D[4]=40
>>> D
{1: 10, 2: 20, 3: 30, 4: 40}

Traversing a dictionary
 You can loop through a dictionary by using for loop.
 When looping through a dictionary, the return values are the keys of the dictionary, but there are
methods to return the values as well.
We can use following methods to traversing a dictionary:

keys()
It returns the keys of the dictionary, as a list.

>>> D = {1:10, 2:20, 3:30}


>>> D.keys()
dict_keys([1, 2, 3])
#Print the keys of the dictionary.
D = {1:10, 2:20, 3:30}
for i in D.keys():
print(i)
Output:
1
2
3

values()
It returns the values of the dictionary, as a list.

>>> D = {1:10, 2:20, 3:30}


>>> D.values()
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

dict_values([10, 20, 30])

#Print the values of the dictionary.


D = {1:10, 2:20, 3:30}
for i in D.values():
print(i)

Output:
10
20
30

items()
It returns the key-value pairs of the dictionary, as tuples in a list. It returns List of tuples.

>>> D = {1:10, 2:20, 3:30}


>>> D.values()
dict_items([(1, 10), (2, 20), (3, 30)])

#Print all keys and values of the dictionary.


D = {1:10, 2:20, 3:30}
for i in D.items():
print(i)

Output:
(1, 10)
(2, 20)
(3, 30)

Built-in functions/methods of dictionary:


1. len()
It returns the number of keys in the list.

>>> D = {1:10, 2:20, 3:30}


>>> len(D)
3

2. dict()
The dict() function is used to create a dictionary.
>>> D = dict(name = "Shiva", age = 26, country = "India")
>>> D
{'name': 'Shiva', 'age': 26, 'country': 'India'}
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

3. get(k[,d])
Returns the value of the key. If the key does not exist, returns d (defaults to None).

>>> D = {1:10, 2:20, 3:30}


#Return the value of key ‘1’
>>> D.get(1)
10
>>> D.get(4)
None

4. update()
The update() method inserts specified elements to the dictionary or merge two dictionaries. If key is already
exist in the dictionary then the value of the existing key will be update:
dictionary.update(iterable)

>>> D = {1:10, 2:20, 3:30}


>>> D.update({4:40,1:45})
>>> D
{1: 45, 2: 20, 3: 30, 4: 40}

Merge two dictionaries using update() method


>>> D1={1:10,2:20}
>>> D1
{1: 10, 2: 20}
>>> D2={3:30,4:45}
>>> D2
{3: 30, 4: 45}
>>> D1.update(D2)# No change will happen in D2
>>> D1
{1: 10, 2: 20, 3: 30, 4: 45}

5. del
del is a keyword.
del is used to delete an element from the dictionary using keyname.

>>> D = {1:10, 2:20, 3:30}


>>> D
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

{1: 10, 2: 20, 3: 30}


>>> del D[1]
>>> D
{2: 20, 3: 30}

del can also be used to delete the complete dictionary

>>> del D
>>> D
NameError: name 'D' is not defined.

6. clear()
The clear( ) method is used to delete all the elements (key:value pairs) from a dictionary.
It does not delete the structure of the dictionary

>>> D = {1:10, 2:20, 3:30}


>>> D
{1: 10, 2: 20, 3: 30}
>>> D.clear()
>>> D
{}

7. pop(key[,d])
Removes the item with the key and returns its value or d if key is not found. If d is not provided and the key
is not found, it raises KeyError.

>>> D = {1:10, 2:20, 3:30}


>>> D
{1: 10, 2: 20, 3: 30}
>>> D.pop(2)
20
>>> D#{1: 10, 3: 30}
>>> D.pop(5)
KeyError
>>> D.pop(5,”Not found”)
Not found

8. popitem()
popitem() method is used to delete the last element from the dictionary. It return the (key, value) pair of
deleted elements in tuple type. If the dictionary is empty then will raise KeyError
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

>>> D = {1:10, 2:20, 3:30}


>>> D
{1: 10, 2: 20, 3: 30}
>>> D.popitem()
(3, 30)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

9. setdefault(key[,d])

setdefault() method returns the value of the specified key. If the key does not exist in the dictionary it insert
the key into dictionary, with the specified value. If no value is given then add None.

>>> D = {1:10, 2:20, 3:30}


Return the value of key ‘2’
>>> D.setdefault(2)
20

Return the value of key ‘3’. If key is already exists in the dictionary, 2nd argument does not effects

>>> D.setdefault(3,50)
30

Return the value of key ‘4’. If the key is not found in the dictionary, then add the key and specified value
and then return the value of the key.

>>> D.setdefault(4,40)
40
>>> D
{1: 10, 2: 20, 3: 30, 4: 40}

If the key is not found in the dictionary, then add the key and None as the value of key (if value is not passed
in the argument). It will not return anything.

>>> D.setdefault(5)
>>> D
{1: 10, 2: 20, 3: 30, 4: 40, 5: None}

10. max()
max() function returns the largest key from the dictionary. Comparison done on the bases of ASCII values if it’s
a string value.

>>> D={1: 10, 2: 20, 3: 30, 4: 40}


>>> max(D)
4

If keys are string, here ‘h’ has the largest ASCII value.

>>> D={'a':10,'B':20,'h':30}
>>> max(D)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

'h'

11. min()
min() function returns the smallest key from the dictionary.
>>> D={1: 10, 2: 20, 3: 30, 4: 40}
>>> min(D)
1
If keys are string, here ‘B’ has the largest ASCII value.
>>> D={'a':10,'B':20,'h':30}
>>> min(D)
'B'

12. fromkeys()
The fromkeys() method creates and returns a dictionary. It is useful when we want to create a dictionary
with multiple keys which have the same value.
Syntax: dict.fromkeys(keys, value)

>>> K=('A','B','C')
>>> V=10
>>> D=dict.fromkeys(K,V)
>>> D
{'A': 10, 'B': 10, 'C': 10}

13. copy()
The copy() method returns a copy of the specified dictionary.
dictionary.copy()

>>> D={1:10,2:20}
Create a copy of dictionary D and store in D1
>>> D1=D.copy()
>>> D1
{1: 10, 2: 20}

14. sorted()
sorted() function sort the dictionary keys in ascending order

>>> D={1:10,4:40,3:30,2:20}
Return the keys of dictionary in sorted order
>>> sorted(D)
[1, 2, 3, 4]
Return the keys of dictionary in sorted order
>>> sorted(D.keys())
[1, 2, 3, 4]
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Return the values of dictionary in sorted order


>>> sorted(D.values())
[10, 20, 30, 40]
Return the (key, value) pairs of dictionary in sorted order
>>> sorted(D.items())
[(1, 10), (2, 20), (3, 30), (4, 40)]

Iterating through Dictionary


d={1:"puja",2:"ramya",3:"tanya"}
for i in d:
print(i, d[i])# key and value

Python Dictionary Comprehension


Dictionary comprehension is an elegant and concise way to create a new dictionary from an iterable in Python.
Dictionary comprehension consists of an expression pair (key: value) followed by a for statement inside curly
braces {}.
Here is an example to make a dictionary with each item being a pair of a number and its square.
# Dictionary Comprehension
squares = {x: x*x for x in range(6)}
print(squares)

{0: 0, 1: 1, 2: 4, 3: 9, 4: 16, 5: 25}


Method to create Dictionary at run time :
Write a program to enter roll number and names of five students and store the data in dictionary.

d={}
for i in range(5):
rno=int(input("Enter roll number"))
name=input("Enter name of student")
d[rno] = name # d[key]=value
print(d)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Introduction to Modules:
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Multiple choice questions

1. What are the basic steps in problem solving?


A) Execution, Debugging, Testing
B) Analyzing the problem, developing an algorithm, coding, testing and debugging
C) coding, analysis, testing, debugging
D) debugging, coding, testing, analyzing
Answer: B) Analyzing the problem, developing an algorithm, coding, testing and debugging

2. Which of the following is a representation of an algorithm using graphical symbols?


A) pseudo code
B) Flowchart
C) Python code
D) variable
Answer: B) Flowchart

3. What is the purpose of comments in Python code?


A) To add logic to the program
B) making the code more confusing
C) to explain the code to other programmers
D) To hide the code from others
Answer: C) to explain the code to other programmers

4. Which data type is used to store a single character in Python?


A) integer
B) string
C) character
D) four
Answer: B) string

5. Which operator checks whether an element is present in a sequence or not?


A) membership operator
B) identity operator
C) assignment operator
D) relational operator
Answer: A) membership operator

6. What is the purpose of break statement in a loop?


A) to continue to the next iteration of the loop
B) premature exit from the loop
C) leaving the loop completely
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

D) repeating the loop indefinitely


Answer: B) premature exit from the loop

7. Which built-in function is used to find the length of a string in Python?


A) size()
B) length()
C) count()
D) len()
Answer: D) len()

8. What is the output of the following Python code?


x=5
you = 2
result = x/y
print(result)

A) 7
B) 2.5
C) 2
D) error
Answer: B) 2.5

9. Which of the following is an example of mutable data type in Python?


A) string
B) integer
C) list
D) tuple
Answer: C) list

10. What is the purpose of the range() function in the for loop in Python?
A) Generating a sequence of numbers
B) performing mathematical operations
C) Checking membership in a list
D) Calculating the factorial of a number
Answer: A) Generating a sequence of numbers

11. Which of the following is not a valid Python variable name?


A) my_variable
B) 123_variable
C) _variable
D) Variable123
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Answer: B) 123_variable

12. Which operator is used to check whether two values are equal in Python?
A) ==
B) !=
C) <=
D) >
Answer: A) ==

13. What is the result of the expression 5%2 in Python?


A) 2
B) 2.5
C) 0.5
D) 1
Answer: D) 1

14. What does the strip() method do for a string in Python?


A) Removes all the vowels from the string
B) Removes leading and trailing spaces from the string
C) Converts the string to uppercase
D) splits the string into a list
Answer: B) Removes leading and trailing spaces from the string

15. Which of the following is a logical operator in Python?


A)+
B) %
C) and
D) >
Answer: C) and

16. What does the input() function do in Python?


A) displays the output on the screen
B) accepts input from the user
C) performs mathematical calculations
D) converts data types
Answer: B) accepts input from the user

17. Which of the following statements will create a list?


A) L = list()
B) L = []
C) L = list([1, 2, 3])
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

D) All of the above


Answer: D) All of the above

18. What is the output when we execute a list("hello")?


A) ['h', 'e', 'l', 'l', 'o']
B) ['hello']
C) ['llo']
D) ['olleh']
Answer: A) ['h', 'e', 'l', 'l', 'o']

19. Suppose L is [5, 3, 9, 4], what is max(L)?


A) 5
B) 3
C) 9
D) 4
Answer: C) 9

20. Suppose L is [5, 3, 9, 4], what is min(L)?


A) 5
B) 3
C) 9
D) 4
Answer: B) 3

21. Suppose L is [5, 3, 9, 4], what is sum(L)?


A) 5
B) 3
C) 9
D) 21
Answer: D) 21

22. Suppose L is [2, 3, 8, 4, 5], What is L[-1]?


A) 2
B) 5
C) 8
D) 4
Answer: B) 5

23. Suppose L is [2, 3, 8, 4, 5], What is L[:-1]?


A) [2, 3, 8, 4, 5]
B) [2, 3, 8, 4]
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

C) [5, 4, 8, 3, 2]
D) [4, 8, 3, 2]
Answer: B) [2, 3, 8, 4]

24. Which of the following is a Python tuple?


A) [1, 2, 3]
B) (1, 2, 3)
C) {1, 2, 3}
D) {}
Answer: B) (1, 2, 3)

25. If T = (1, 2, 4, 3), which of the following is incorrect?


A) print(T[3])
B) T[3] = 45
C) print(max(T))
D) print(len(T))
Answer: B) T[3] = 45

26. What will be the output of the following Python code?


>>>T = (1, 2)
>>>2 * T
A) (1, 2, 1, 2)
B) [1, 2, 1, 2]
C) (1, 1, 2, 2)
D) [1, 1, 2, 2]
Answer: C) (1, 2, 1, 2)

27. Write the output of the following code?


>>> L1=[1,55,100,6,453,2,66,23,56]
>>> L2=sorted(L1)
>>> L2
A) [1, 2, 6, 23, 55, 56, 66, 100, 453]
B) [1, 55, 100, 6, 453, 2, 66, 23, 56]
C) []
D) Error
Answer: A) [1, 2, 6, 23, 55, 56, 66, 100, 453]

28. Which method deletes the last inserted (key, value) pair from the dictionary?
A) pop()
B) popitem()
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

C) del()
D) del
Answer: B) popitem()

29. is a mapping of unique keys to values. It consists of key-values pairs.


A) List
B) Dictionary
C) String
D) Tuple
Answer: B) Dictionary

30. Write output of the following code in interactive mode/shell?


>>> dict1={'Student': (1, 'Sachin', 'Computer'), 'Teacher': ('Hindi', 1001, 'Saanvi')}
>>> dict1["Teacher"][2]
A) ‘Sachin’
B) ‘Hindi’
C) ‘Saanvi’
D) ‘Teacher
Answer: C) ‘Saanvi’

31. To include the use of functions which are present in the random library, we must use the
option:
A) import random
B) random.h
C) import.random
D) random.random
Answer: A) import random

32. What can be the output of the following Python code?


random.randrange(1,100,10)
A) 32
B) 67
C) 91
D) 80
Answer: D) 80

Short Answer Questions


1. Define the term algorithm.

Answer: An algorithm is a step-by-step procedure for performing a specific task.


Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

2. What are the three main types of errors in programming, and briefly explain each type?
Answer:
Syntax errors : errors in the code's structure
Logical errors : errors in the program's logic
Runtime errors : errors that occur during program execution

3. Explain the purpose of the break and continue statements in Python.


Answer:
The break statement is used to exit a loop prematurely while the continue statement is used to skip
the remaining code in the current iteration of a loop and move on to the next iteration.

4. Describe the difference between a mutable and an immutable data type in Python, providing
an example of each.
Answer:
Mutable data types can be changed or modified after creation. Example List
Immutable data types cannot be changed once created. Example tuple.

5. Explain the concept of "type conversion" in Python.


Answer:
Type conversion refers to the process of changing the data type of a value from one type to another.
In Python, this can be done explicitly or implicitly.

6. Explain the role of data types in Python.


Answer:
Data types define the kind of data a variable can hold. Examples of data types include int, float,
strings lists etc.

7. What is the difference between List and Tuple?


● List is a mutable type whereas Tuple is an immutable type.
● List is denoted by square brackets i.e. [ ] whereas Tuple is denoted by parenthesis i.e. ( )

8. What is the expected output of the following Python code.

import random
M=[5, 10, 15, 20, 25, 30]
for i in range(1,3):
F=random.randint(2,5) - 1
S=random.randint(3,6) - 2
T=random.randint(1,4)
print(M[F], M[S], M[T], sep="#")
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

A) 10#25#15
20#25#25

B) 5#25#20
25#20#15

C) 30#20#20
20#25#25

D) 10#15#25#
15#20#10#

Answer:
A) 10#25#15
20#25#25

9. Write the output of the following Python code.


A =['1']
A.extend('234')
print(A)

Output: ['1', '2', '3', '4']

10. Write the output of the following Python code.


a=[2,5,3,4]
a[2:2] =[2]
print(a)

Output: [2, 5, 2, 3, 4]

11. Write the output of the following Python code.


T=(10,20,30,(10,20,30),40)
print(T.index(20))

Output: 1

12. Write the output of the following Python code.


Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

T = ("Akshay", "Prashant", "Anirudh", "Sachin", "Amit", "Yamini")


print(T[-1:-4:-1])

Output: ('Yamini', 'Amit', 'Sachin')

13. Write a Python program to check whether a dictionary is empty or not.

d = eval(input("Input a dictionary: "))


if len(d) == 0:
print("The given dictionary is empty")
else:
print("The given dictionary is not empty")

Output:
Input a dictionary: {}
The given dictionary is empty
Input a dictionary: {1:10}
The given dictionary is not empty

14. Write a Python program to merge two dictionaries.

D1 = {1: 'a', 2: 'b'}


D2 = {2: 'c', 4: 'd'}
print("Using | Operator")
print(D1 | D2)
print("Using ** Operator")
print({**D1, **D2})
print("Using copy() and update()")
D3 = D1.copy()
D3.update(D2)
print(D3)

Output:
Using | Operator
{1: 'a', 2: 'c', 4: 'd'}
Using ** Operator
{1: 'a', 2: 'c', 4: 'd'}
Using copy() and update()
{1: 'a', 2: 'c', 4: 'd'}
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

15. Write the output of the following Python code.

A=[0,1,2,3]
for A[2] in A:
print(A[2], end="#")

Output:
0#1#1#3#

16: Write the output of the following code:

L = [None] * 10
print(len(L))

Output:10

Programming Questions

Program 1: Write a program to calculate the sum of two numbers and print their sum.
num1 = 1.5
num2 = 6.3
sum = num1 + num2
print(sum)

Output :
7.8

Program 2: Write a program that accepts the radius of a circle and prints its area.
radius = float(input("Input the radius of the circle : "))
area = (22/7)*radius*radius
print (area)

Output :
Input the radius of the circle : 7.0
154.0
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Program 3:Write a program to compute simple interest.


P = float(input("Enter Principal: "))
R = float(input("Enter Rate of Interest (in % per annum) : "))
T = float(input("Enter Time Period : "))

# Calculates simple interest


SI = (P * R * T) / 100
print(SI)

Output :
Enter Principal: 1000
Enter Rate of Interest (in % per annum) : 20
Enter Time Period : 3
600.0

Program 4: Write a program to take sides of a triangle as input and print its area.
a = float(input("Enter first side: "))
b = float(input("Enter second side: "))
c = float(input("Enter third side: "))

# calculate the semi-perimeter


s = (a+b+c)/2

# calculate the area


area = (s*(s-a)*(s-b)*(s-c))**0.5
print(area)

Output :
Enter first side: 5
Enter second side: 6
Enter third side: 7
14.696938456699069

Program 5: Write a program to find whether a given number is even or odd?


num = int(input("Enter a number: "))
if num % 2 == 0:
print("Even Number")
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

else:
print("Odd Number")

Output :
Enter a number: 95
Odd Number

Program 6: Write a program to find the factorial of a number.


num = int(input("Enter a number to find factorial: "))
factorial = 1
if num < 0:
print("Sorry, factorial does not exist for negative numbers")
else:
for i in range(2,num+1):
factorial = factorial*i
print("The factorial of is ",factorial)

Output :
Enter a number to find factorial: 6
The factorial of is 720
Program 7: Write a program to display the Fibonacci sequence up to n-th term where n is provided
by the user
first = 0
second = 1
counter = 0
number_of_terms = int(input("Enter Number of terms : "))
if number_of_terms <= 0:
print("Please enter a positive integer")
else:
while counter < number_of_terms:
print(first, end = " ")
temp = first + second
first = second
second = temp
counter = counter + 1
Output :
Enter Number of terms : 10
0 1 1 2 3 5 8 13 21 34
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Program 8: Write a program in Python to check if a number entered by a user is a prime number or
not.
number = int(input("Enter a positive number greater than one : "))
flag = 0
if number > 1:
for i in range(2,number):
if ((number%i) == 0):
flag = 1
break
if (flag==1):
print("Not prime")
else:
print("Prime")
Output :
Enter a positive number greater than one : 79
Prime

Program 9: Write a Program to check if the input year is a leap year or not
year = int(input("Enter a year : "))
if(((year % 4 == 0) and (year % 100 != 0)) or (year % 400 == 0)):
print("Leap Year")
else:
print("Non Leap Year")

Output :
Enter a year : 2100
Non Leap Year

Program 10: Write a Python program to remove duplicates from a list.


L = [2, 4, 10, 20, 5, 2, 20, 4]
F = []
for n in L:
if n not in F:
F.append(n)
print(F)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Output :
[2, 4, 10, 20, 5]

Program 11: Write a Python program to count the number of strings of length 2 or more and the first
and last character are same from a given list of strings

words = ['abc', 'xyz', 'aba', '1221']


count=0
for w in words:
if len(w) > 1 and w[0] == w[-1]:
count = count + 1
print(count)

Output :
2

Program 12: Write a Python program to find the sum of all even numbers and all odd numbers from
the given tuple.

T = (8, 10, 13, 5, 6,9)


L= len(T)
even=0
odd=0
for i in range(L):
if T[i]%2==0:
even=even + T[i]
else:
odd = odd + T[i]

print("Sum of Even Numbers is = ", even)


print("Sum of Odd Numbers is = ", odd)

Output:
Sum of Even Numbers is = 24
Sum of Odd Numbers is = 27
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Program 13: Write a program in Python, To input a list of numbers. Thereafter increments all even
numbers by 1 and decrements all odd numbers by 1.

L = [8, 10, 13, 5, 6, 9]


print("Original List = ", L)
for i in range(len(L)):
if L[i]%2==0:
L[i]=L[i] + 1
else:
L[i] = L[i] - 1

print("Updated List = ", L)

Output:
Original List = [8, 10, 13, 5, 6, 9]
Updated List = [9, 11, 12, 4, 7, 8]

Program 14: Write a program in python, to input a dictionary Emp which contains eid and ename as
key value pair and displays the name in uppercase of the values whose names are longer than 5
characters.
For example:
Emp = {101: 'Rahul', 102: 'Hardik', 103: 'Virat', 104:'Jaspreet'}
The output should be:
Hardik
Jaspreet

Emp = {}
c='y'
while c in 'yY':
eid = int(input("Enter the employee id: "))
ename = input("Enter the name of employee: ")
Emp[eid] = ename
c = input("Do you want to add more elements(y/n): ")
print("Dictionary is : ", Emp)
print("Employee name longer than 5 characters: ")
for name in Emp.values():
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

if len(name)>5:
print(name.upper())

Output:

Enter the employee id: 101


Enter the name of employee: Rahul
Do you want to add more elements(y/n): y
Enter the employee id: 102
Enter the name of employee: Hardik
Do you want to add more elements(y/n): y
Enter the employee id: 103
Enter the name of employee: Virat
Do you want to add more elements(y/n): y
Enter the employee id: 104
Enter the name of employee: Jaspreet
Do you want to add more elements(y/n): n
Dictionary is : {101: 'Rahul', 102: 'Hardik', 103: 'Virat', 104: 'Jaspreet'}
Employee name longer than 5 characters:
HARDIK
JASPREET

Question : Write the output of the following code:

a = "Year 2022 at All the best"


a = a.split('2')
b = a[0] + ". " + a[1] + ". " + a[3]
print (b)

Output :
Year . 0. at All the best

Question :
Match the following: -
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

1) Returns True if all characters in the string are (a). count()


digits

2) Returns the number of times a specified value (b). extend()


occurs in a string

3) Splits the string at the specified separator, and (c). append()


returns a list

4) Add the elements of a list (or any iterable), to (d). isdigit()


the end of the current list

5) Removes the first item with the specified value (e). split()

(f). pop()

(g). remove()

Answer:
1 - D, 2 - A, 3 - E, 4 - B, 5 - G

Question: Write the output of the following code:

tuple1 = (11, 22, 33, 44, 55 ,66)


list1 =list(tuple1)
new_list = []
for i in list1:
if i%2==0:
new_list.append(i)
new_tuple = tuple(new_list)
print(new_tuple)
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Output :
(22, 44, 66)

Question: Write the output of the following code:

N={'A':'B','C':'D'}
for k,v in N.items():
print(k,v)

Output :
AB
CD

Assertion and Reason Type Questions

1. Assertion (A): Strings in Python are immutable.


Reason (R): Once a string object is created, it cannot be changed.
A. Both A and R are true and R is the correct explanation for A
B. Both A and R are true and R is not the correct explanation for A
C. A is True but R is False
D. A is False but R is True

Answer : A. Both A and R are true and R is the correct explanation for A

2. Consider the code given below:


x=5
print(x==5)

A: Output of above python code is True.


R: '==' is logical Operator.
A. Only A is True.
B. Only R is True.
C. Both A and R are True, but R is not the correct reason for A.
D. Both A and R are True, but R is the correct reasoning for A.

Answer : A. Only A is true.

3. Assertion (A): The in operator in python is membership Operator.


Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Reason (R): in operator in Python is used searching for specific elements within sequences like
lists and strings etc.
A. Both A and R are true and R is the correct explanation for A
B. Both A and R are true and R is not the correct explanation for A
C. A is True but R is False
D. A is False but R is True

Answer : A. Both A and R are true and R is the correct explanation for A

4. Assertion (A): Modules in Python are reusable pieces of code that can be imported into other
Python scripts.
Reason (R): import statement must be the first line of the program

A. Both A and R are true and R is the correct explanation for A


B. Both A and R are true and R is not the correct explanation for A
C. A is True but R is False
D. A is False but R is True

Answer: A is True but R is False

5. Assertion (A): pop() used to delete the last element from the dictionary.
Reason (R): popitem() used to delete the specific element from the dictionary.

A. Both A and R are true and R is the correct explanation for A


B. Both A and R are true and R is not the correct explanation for A
C. A is True but R is False
D. Both A and R are False

Answer: Both A and R are False

6. Assertion (A): extend() method is used to merge two dictionaries.


Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Reason (R): items() method is used to display the keys and also the values of the dictionary.

A. Both A and R are true and R is the correct explanation for A


B. Both A and R are true and R is not the correct explanation for A
C. A is True but R is False
D. A is False but R is True

Answer: A is False but R is True

7. Assertion (A): L.len() statement used to return the total number of elements in the list.
Reason (R): count() method is used to find the total number of elements in the list.

A. Both A and R are true and R is the correct explanation for A


B. Both A and R are true and R is not the correct explanation for A
C. A is True but R is False
D. Both A and R are False

Answer: Both A and R are False


--------------------------------------------------------------------------------------------------------------------
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

UNIT 3 :
Society, Law and Ethics
Digital Footprints
● Digital footprints are a set of footprints (trackable information or
activity) left behind while using any digital device such as
smartphone, desktop or laptop computers, or performing
activities such as browsing the internet, posting on social media,
playing a game, editing a file etc.

● In other words, it can be considered as the data trail – intentional and unintentional - that is left
behind while surfing the web.
● Digital footprints are the information that others can see or collect about you.

Event Footprints(information)
Visiting a website IP address, cookies, browsing history, interests
Social media post Location, Username, personal Photos
Sending email IP address, Email address
Online shopping IP address, User behavior, Payment information

How are digital footprints created ?


Digital footprint are of two types

1. Active Digital Footprint


An active digital footprint is intentionally/deliberately
shared by the user, either by using social media sites,
emails or by using websites.
When is an active digital footprint created?
● Posting on social media: Sharing updates,
photos, videos, and comments on platforms
like Facebook, Instagram, Twitter, etc.
● e-commerce: Providing personal and payment
information when shopping online.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

2. Passive Digital Footprint


Information that is unintentionally shared by the user creates a Passive Digital Footprint.
When are Passive digital footprint created?
● Cookies and browsing history:
Websites use cookies to track browsing behavior, preferences, and interactions on their site.
● IP address tracking:
Websites can log your IP address, which can reveal approximate location and the internet service
provider.

How to minimize passive digital footprint?


We can adjust privacy settings, clear cookies and browsing history regularly, and use tools that block
online tracking.

Digital Society and Netizen

Anyone who uses digital technology along with the Internet is a digital citizen or netizen.
A responsible netizen must follow
1. Net etiquettes
2. Communication etiquettes
3. Social media etiquettes

Net etiquettes
Etiquettes : set of rules that govern appropriate and respectful conduct.
Netiquette, (Internet etiquette) refers to the set of guidelines and rules for polite, respectful, and responsible
behavior while using digital communication platforms for communicating online. We should follow certain
etiquettes during our social interactions.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

● Be Ethical
o ethical : morally correct
o No copyright violation: we should not use copyrighted materials without the permission of
the creator or owner.
o Share the expertise: it is good to share information and knowledge on the Internet so that
others can access it.
● Be Respectful
o Respect privacy
▪ In the physical world : Privacy is the state of being alone, or freedom from
disturbance/intrusion.
▪ In the Digital world also everyone has the right to privacy and the freedom of
personal expression.
o Respect diversity: In a group or public forum, we should respect the diversity of the people
in terms of knowledge, experience, culture and other aspects.
● Be Responsible
o Avoid cyber bullying
▪ bully : to use your strength or power to hurt or frighten somebody who is weaker
o In Cyber world
▪ Cyberbullying is bullying (to harass, threaten, embarrass) with the use of digital
devices like cell phones, computers, and tablets.
● Don’t get involved in trolling.
An internet troll is a person who posts inflammatory or off topic messages in an online community,
just for amusement or seeking attention. The best way to discourage trolls is not to pay any attention
to their comments

Digital Communication Etiquettes (Rules for good Digital Communication)

● In Physical world
o communication : the act of sharing or exchanging information, ideas or feelings
● In Digital world
o Digital Communication : Digital communication includes email, texting, instant messaging,
talking on the cell phone, audio or video conferencing, posting on forums, social networking
sites, etc.
● Be Precise
o We should be clear and accurate while communicating online. We should compress very
large attachments before sending.

● Be Polite
o Polite : showing respect for others
o We should be polite and non-aggressive in our communication
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

● Be Credible
o Credible : that can be believed (विशिसनीय)
o We should be cautious while making a comment, replying or writing an email or forum post
as such acts decide our credibility over a period of time.

Social Media Etiquettes

● Social media is a collective term for websites and applications that facilitates the sharing of ideas,
thoughts, and information
Example : Facebook, Twitter, Instagram
● Be Secure
o Choose password wisely
o Know who you befriend
o Choose Friends Wisely
● Beware of fake information
o we should be able to figure out whether a news, message or post is genuine or fake by
checking Facts (PIB Fact Check)
● Be Reliable
o Think before uploading

Data Protection

● Data or information protection means safeguarding and preserving the privacy of data stored
digitally.
● Data that cause substantial harm, embarrassment, inconvenience and unfairness to an individual, if
breached or compromised is called sensitive information.
For example, financial information, personal information etc.
● The main goal of data protection is to ensure that individuals' personal information is processed and
handled in a secure and lawful manner, protecting their rights and privacy..

Intellectual Property Right (IPR)


Protection of
unique name,
slogans, logo that Protection of

● Intellectual property (IP) refers to the ownership of an makes a brand inventions


distinct from other Validity for 20
Valid for 10 years, years starting from
the day of patent

idea or design by the person who came up with it. Trademar


k
Patent
● Intellectual property (IP) refers to innovation such as
inventions; literary and artistic works; designs; and ® Copyrig
symbols, names and logos. Trade ht
secret
● Intellectual Property is legally protected through trade secret is a Protection of
valuable and original creative

copyrights, patents, trademarks, etc confidential piece of


information that a
company keeps as a
Valid for life time of
author +60 year of
his/her death
secret to gain an
Prepared by Ms. Puja Gupta, PGT Comp Sc.

COMPUTER SCIENCE

Copyrights
● Copyright grants legal rights to creators for
literary, dramatic, musical, artistic works,
photograph, audio recordings, video recording,
computer software’s.
● The rights include right to copy (reproduce) a
work, right to distribute copies of the work to the
public, and right to publicly display or perform
the work.

Patent
● A patent is usually granted for inventions. When
a patent is granted, the owner gets an exclusive
right to prevent others from using, selling, or
distributing the protected invention.
● Patent gives full control to the patentee to decide
whether or how the invention can be used by
others.
● Example : Pen with scanner (with a machine as
small as a pen, we can transfer text from paper
directly into a computer)

Trademark
1. Trademark is a visual symbol, name, design,
slogan, label, etc., that distinguishes the brand or
commercial enterprise from other brands or
commercial enterprises.
2. Example trademark of Gmail, Macdonald etc
Violation of IPR
When we use some other intellectual property
(idea,image,logo,trademark) without taking consent or permission from the owner. IPR violation
may occur in following ways:

Plagiarism
Presenting someone else’s idea or work as one’s own idea or work is called plagiarism. If we copy
some contents from the Internet, but do not mention the source or the original creator, then it is
considered as an act of plagiarism.
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Copyright Infringement
● Infringement = उललंघन
● Copyright infringement is when we use another person’s work without obtaining their
permission to use or we have not paid for it, if it is being sold.

Trademark Infringement
● Trademark Infringement means unauthorized use of another's trademark on products and
services.

Free and Open Source Software (FOSS) and Licensing :


Free and Open Source Software (FOSS)
● Free and Open Source Software (FOSS) is a type of software which is free and the source
code is publicly available so that anyone can use it, study it, and even change or improve
it.
● The goal is to encourage collaboration among users and developers to make the software
better together.
● Examples of FOSS include Ubuntu operating system, Python programming language,
Libreoffice, Openoffice, and Mozilla Firefox web browser.

Freeware
● Sometimes, software is freely available for use but source code may not be available. Such
software is called freeware. Examples of freeware are Skype, Adobe Reader, etc.

Proprietary
● When the software to be used has to be purchased from the vendor who has the copyright
of the software, then it is proprietary software.
● The source code is not publicly available. Only the company which has developed it, can
modify it.
● These software’s are developed and tested by individuals or the organization by which it
is owned, not by the public.
● Examples of proprietary software include Microsoft Windows, Quickheal, etc.

License
License : An official document that gives you permission to own, do, or use something.
● A public license or public copyright licenses is a license by which a copyright holder as
licensor can grant additional permissions to others to use and even modify the content.
● The GNU General public license (GPL) and the Creative Commons (CC) are two popular
categories of public licenses.

111
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Creative Commons (CC)


● CC is used for all kinds of creative works like websites, music, film, literature,
etc. CC enables the free distribution of an otherwise copyrighted work. It is used
when an author wants to give people the right to share, use and build upon a work
that they have created.
GNU General public license (GPL)
● The GNU General Public License (GNU GPL or simply GPL) is primarily
designed for providing a public license to a software. It guarantees end users
the freedom to run, study, share, and modify the software.
Apache
● The Apache License is a type of free software license created by the Apache
Software Foundation.
● It is very flexible and permissive, which means people can use the software in
any way they want, share it with others, and even make changes to it.
● No need to worry about paying any fees or royalties for using or sharing the
software. It gives a lot of freedom to users and encourages collaboration and
sharing within the software community.

Cyber Crime:
● Any criminal, illegal or harmful activity conducted using computers, the internet, or other
digital device is referred to as Cyber Crime.
● These activities are committed by individuals or groups to steal or harm someone else's
data, privacy, or online safety.
● Here are some examples of cybercrimes: Cyber bullying, online scams, hacking, stalking,
ransomware attack, phishing etc.

Hacking:
● Hacking is unauthorized access to a computer or a network with the intention of
committing a crime.
● It can also be explained as the act of accessing computer systems, networks, or digital
devices in a skilful and creative manner to explore and find some security loopholes in
order to gain access to confidential information.
● The process of gaining unauthorized access to a computer system, group of systems or an
organization’s data is known as hacking.
● The person engaged in these activities is generally known as a Hacker.

Eavesdropping:
● Eavesdropping is to intercept and listen to private electronic communications, such as
emails, instant messages, or phone calls, without the consent of the parties involved.
● It can be done via hacking or surveillance techniques to access the conversations. The main
purpose of eavesdropping is to steal data.

112
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Phishing:
● Phishing is a cybercrime where criminals attempt to deceive Individuals into revealing
sensitive information like passwords or credit card details by posing as trustworthy entities
through fake emails, websites, or messages.
● For example an email of winning a lottery and asking you to fill your bank details.

Fraud Emails:
● Fraudulent emails are cybercrimes where bad people send fake mails that try to trick people
to get personal information, passwords, or money.
● These dishonest emails may pretend to be from a popular website, but it's essential to be
cautious and never share sensitive details with unknown senders.

Ransomware:
● Ransomware is a cybercrime where bad people create harmful software that locks or
encrypts important files on a computer.
● They then demand ransom from the computer's owner to unlock the files
and make them accessible again.
● It's essential to be careful while using computers and not click on
suspicious links or download unknown files to avoid ransomware
attacks.

Cyber Trolls:
Trolls are visitors who leave inflammatory comments in public comment sections. Whether they
comment on blog posts or online news sites, they are looking to grab the attention of other visitors
and disrupt discussion that would otherwise be about the page's content.

Cyber Bullying:
● Cyber bullying is bullying with the use of digital technologies. It is to
intimidate, harass, demean, defame or humiliate others repeatedly
using digital platforms such as the internet, social media, phone,
internet, instant messengers etc.
● It can cause emotional distress, anxiety, and damage self-esteem.
Examples include: posting embarrassing photos of someone on social
media, sending hurtful messages.

Cyber Safety:
● Cyber Safety refers to the practice of protecting oneself, one's information, and digital
assets from potential internet threats or online threats. Cyber Security is to protect users
from harmful online activities.
● The aim of cyber safety is to promote responsible and secure online behavior to ensure a
safe experience for everyone.

113
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Safely Browsing the Web:


These days working on the web or the internet have become very common and inevitable. We
must be aware of the threats while browsing the web.
● To safely browsing on the web we should know the following things:
1. What can be the possible dangers/threats?
2. How can we avoid these?

Identity Protection while using the internet:


We browse the internet these days for a variety of reasons via providing our personal information
to sell or purchase goods on the internet, on social media platforms and so on.
● This information can be used in a fraudulent way. Fraud which involves another's identity
to steal money or to gain other benefits is known as Identity Theft or Identity Fraud.
● It can be of Financial theft , criminal theft/ medical theft.
Confidentiality of Information:
● Confidentiality of information refers to the protection and safeguarding of sensitive or
private data from unauthorized access, disclosure, or use.
● The owner of the information or the data has to decide who can have the access or use
the data and who can’t.
● To ensure confidentiality, organizations and individuals can implement various
security measures, including: Access controls, Encryption, Physical security, Regular
security audits.

Malware
● Malware (malicious software) is any software/program that is designed to damage and
destroy computers and computer systems.
● Computer Malware is like bad software that can cause problems for your computer or
device. It comes in different forms, like viruses, trojans, and adware.

Virus
● A computer virus is a malware (malicious computer code) that spreads from one device to
another. They are like digital germs that infect and harm your computer by spreading from
one file to another. After entering a computer, a virus attaches itself to another program
(like a document) in such a way that execution of the host program triggers the action of
the virus simultaneously.
● It can self-replicate, inserting itself onto other programs or files, infecting them in the
process. Most viruses perform actions that are malicious in nature, such as damaging
programs, deleting or destroying data.
● Viruses spread when the software or documents they get attached to are transferred from
one computer to another using a network, file sharing methods, or through e-mail
attachments.

114
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Trojan horse :
● It is a file or program, or piece of code that appears to be legitimate and safe, but is actually
malware.
● Trojan horse malware is generally designed to spy on victims or steal data. These programs
perform some malicious activities like upload (send) some security files and information
from the computer and at the same time download some unwanted files onto the computer.

Adware
● Adware (or advertising software) is the term used for various pop-up advertisements that
show up on your computer or mobile device.
● Adware has the potential to become malicious and harm your device by slowing it down,
hijacking your browser and installing viruses

E-waste management: proper disposal of used electronic gadgets.


E-waste
● E-waste or Electronic waste includes electric or electronic gadgets and devices that are no
longer in use. Hence, discarded computers, laptops, mobile phones, televisions, tablets,
music systems, speakers, printers, scanners etc. constitute e-waste when they are near or
end of their useful life.
● Globally, e-waste constitutes more than 5 percent of the municipal solid waste. Therefore,
it is very important that e-waste is disposed of in such a manner that it causes minimum
damage to the environment and society.
● When e-waste is carelessly thrown or dumped in dumping grounds, certain elements or
metals used in production of electronic products cause air, water and soil pollution. This is
because when these products come in contact with air and moisture, they tend to leach. As
a result, the harmful chemicals seep into the soil, causing soil pollution. Further, when
these chemicals reach and contaminate the natural ground water, it causes water pollution
as the water becomes unfit for humans, animals and even for agricultural use. When dust
particles loaded with heavy metals enter the atmosphere, it causes air pollution as well.

Some of the feasible methods of e-waste management are reduce, reuse and recycle.

115
Prepared by Ms. Puja Gupta, PGT Comp Sc.

E-waste management cycle:


Reduce: Reduc
e
● We should try to reduce the generation of e-waste by
purchasing the electronic or electrical devices only according
to our need.
● Also, they should be used to their maximum capacity and
Recycl
discarded only after their useful life has ended. Good
e Reuse
maintenance of electronics devices also increases the life of
the devices.
Reuse:
● It is the process of re-using the electronic or electric waste after slight modification.
● The electronic equipment that is still functioning should be donated or sold to someone
who is still willing to use it.
● The process of re-selling old electronic goods at lower prices is called refurbishing.
Recycle:
● Recycling is the process of conversion of electronic devices into something that can be
used again and again in some or the other manner.
● Only those products should be recycled that cannot be repaired, refurbished or re-used.
● To promote recycling of e-waste many companies and NGOs are providing door-to-door
pick up facilities for collecting the e-waste from homes and offices.

Information Technology Act

● The Information Technology Act (IT Act) is an Indian law that was enacted in the year
2000 to provide legal recognition to electronic transactions and to address issues related to
electronic commerce, data protection, and cybercrimes.

● The IT Act aims to facilitate electronic communication and transactions while ensuring the
security and confidentiality of electronic information.
Example: Suppose you want to buy a smartphone online from an e-commerce website. The
transaction involves entering your personal and financial details on the website, such as
your name, address, credit card number, and CVV (Card Verification Value).
Key Points
1. Legal Recognition of Electronic Transactions: The IT Act gives legal validity to
electronic records, including online transactions. So, when you make a purchase
online and receive an electronic receipt, it is legally recognized and can be used as
evidence in case of any disputes.
2. Electronic Signatures: The IT Act recognizes electronic signatures as equivalent
to physical signatures, making contracts and agreements signed electronically

116
Prepared by Ms. Puja Gupta, PGT Comp Sc.

legally binding. When you electronically sign the purchase agreement on the
website, it holds the same legal weight as a physical signature.
3. Data Protection and Privacy: The IT Act includes provisions for data protection
and privacy. The e-commerce website is obligated to take necessary measures to
protect your personal and financial information from unauthorized access or
misuse. They must have a privacy policy in place, and any data collection and
processing must be done with your consent.
4. Cybercrime Provisions: The IT Act addresses cyber crimes such as hacking,
unauthorized access, and data theft. If someone tries to steal your credit card
information during the online transaction, the IT Act provides a legal framework to
prosecute the offender.

Technology and society: Gender and disability issues while teaching and using
computers
Gender Issues
● Preconceived notions
o Notions like boys are better at technical things, girls are good at humanities etc
● Interest development from primitive years
o During primitive years children often played games on the computers and
smartphones. Most of the games are boys centric that increase the interest of boys
in computers.
Disability Issues
● Unavailability of teaching material / aids

True or False type questions

Q. Digital footprints are only created by social media activity, such as posting photos and
comments.
Answer: False.

Q. If you delete your information from the internet then your digital footprint is also deleted
.
Answer: False. Deleted information is difficult to trace but it may be accessible through backups
or cached versions.

Q. Plagiarism is considered a violation of intellectual property rights, even if the copied


material is not used for commercial purposes.
Answer: True.

117
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Q. The Creative Commons license allows creators to retain their copyright while permitting
others to use their work under certain conditions.
Answer: True.

Q. Viruses can spread through email attachments and infect computers when the attachment
is opened.
Answer: True.
Q. Trojans are self-replicating programs that can spread across a network without user
intervention.
Answer: False.

Q. Phishing is a form of cybercrime where attackers attempt to deceive individuals into


disclosing sensitive information through fraudulent emails or websites.
Answer: True.

Q. Ransomware is a type of malicious software that locks users out of their systems or
encrypts their files until a ransom is paid.
Answer:True.

Multiple Choice questions:

Q. What is a digital footprint?


A. The mark left on the floor by a digital device
B. A trail of personal information and online activities
C. A type of digital currency used for online transactions
D. A digital signature used for secure authentication
Answer: B

Q. Why is it essential to manage your digital footprint?


A. To avoid being tracked by internet service providers
B. To increase internet speeds and reduce latency
C. To prevent cyber-attacks and data breaches
D. To conserve digital resources and reduce energy consumption
Answer: C

Q. Which of the following is an example of a passive digital footprint?


A. Posting a status update on social media
B. Sending an email to a friend
C. Deleting browser history and cookies
D. Websites tracking your online activities using cookies
Answer: D

118
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Q. Which of the following is an example of an active digital footprint?


A. Websites collecting data about your browsing habits
B. An online forum post that includes personal information
C. Tracking cookies left on your computer by websites
D. Using private browsing mode to browse the internet
Answer: B

Q. What does "net etiquette" refer to?


A. The rules and conventions for using the internet respectfully and responsibly.
B. The study of networking technologies and protocols.
C. A type of online gaming community.
D. A web design technique for creating interactive websites.
Answer: A

Q. What is the appropriate action to take when you receive a suspicious link or message?
A. Click on the link to see where it leads.
B. Report it to the platform or email provider as spam.
C. Share the link with friends to get their opinion.
D. Respond to the message and inquire about its source.
Answer: B

Q. What should you do if you come across offensive content or cyberbullying online?
A. Engage in the conversation to confront the offenders.
B. Ignore it and move on to avoid getting involved.
C. Report the content to the website or platform administrators.
D. Retaliate with offensive content to defend yourself or others.
Answer: C

Q. How should you handle disagreements in digital communication?


A. Respond with offensive remarks to prove your point.
B. Engage in a public argument to gain more attention.
C. Stay calm and express your viewpoint respectfully.
D. Share the disagreement with others to create awareness.
Answer: C

Q. Which of the following refers to the legal protection of original creations, such as artistic
works and literary pieces?
A. Data Encryption

119
Prepared by Ms. Puja Gupta, PGT Comp Sc.

B. Intellectual Property Rights (IPR)


C. Data Privacy
D. Data Breach
Answer: B

Q. What type of intellectual property right grants exclusive rights to inventors for their
inventions?

A. Copyright
B. Trademark
C. Patent
D. Creative Commons
Answer: C

Q. Open-source software is distributed with a license that allows users to:

A. Use the software without any restrictions.


B. Modify and distribute the software freely.
C. Sell the software for a profit without attribution.
D. Use the software for personal use only.
Answer: B

Q. Which form of intellectual property right protects logos, brand names, and distinctive
signs used in commerce?

A. Copyright
B. Patent
C. Trade Secret
D. Trademark
Answer: D

Q. Plagiarism is the act of:

A. Copying and using someone else's work without proper attribution.


B. Using open-source software without a valid license.
C. Distributing copyrighted material for free online.
D. Creating derivative works based on public domain content.
Answer: A

Q. What is malware?
A. Software designed to protect computer systems from threats.

120
Prepared by Ms. Puja Gupta, PGT Comp Sc.

B. A type of software that enhances computer performance.


C. Malicious software designed to harm computer systems and data.
D. Software that helps in data recovery after a system crash.
Answer: C

Q. Which type of malware disguises itself as legitimate software to trick users into installing
it?
A. Virus
B. Trojan
C. Adware
D. Spyware
Answer: B
Q. What does hacking involve?
A. Legally accessing computer systems
B. Unauthorized access to computer systems
C. Protecting computer networks
D. Improving software efficiency
Answer: B

Q. Eavesdropping is the act of:


A. Intercepting and listening to private communications
B. Sending fraudulent emails
C. Installing firewalls on computers
D. Monitoring social media posts
Answer: A

Q. Ransomware is malicious software that:


A. Protects computer systems from cyber trolls
B. Encrypts files and demands payment for decryption
C. Monitors private communications
D. Enhances internet browsing speed
Answer: B

Q. Cyber bullying involves:


A. Legitimate criticism on the internet
B. Sending fraudulent emails to individuals
C. Harassing, intimidating, or threatening others online
D. Collaborative online projects
Answer: C

Q. What's the best way to protect against cybercrime?

121
Prepared by Ms. Puja Gupta, PGT Comp Sc.

A. Sharing sensitive information online


B. Using weak passwords
C. Regularly updating security software
D. Ignoring software updates
Answer: C
Very short answer type

Q. What is a digital footprint?


Answer: A digital footprint is the trail of data and information left by an individual's online
activities.

Q. How is a digital footprint created?


Answer: Digital footprints are created through online interactions, such as social media posts,
website visits, and online purchases.

Q. What are Intellectual Property Rights (IPR)?


Answer: IPR refers to legal rights that protect creations of the mind, such as inventions, artistic
works, and brand names.

Q. What is the purpose of Creative Commons licenses?


Answer: Creative Commons licenses provide creators with a way to share their work under
specific terms and conditions.

Q. What is malware?
Answer: Malware is malicious software designed to harm computer systems or steal data.

Q. How does a Trojan operate?


Answer: A Trojan disguises itself as legitimate software to trick users into installing it and then
performs malicious actions.

Q. How can users protect themselves from malware?


Answer: Users can install reputable antivirus software, keep systems and applications up to date,
and avoid downloading files from unknown sources.

Q. What is the Information Technology Act (IT Act)?


Answer: The Information Technology Act is a legal framework that addresses electronic
transactions, cybersecurity, and digital data protection.

Q. What are some objectives of the IT Act?

122
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Answer: The objectives of the IT Act include providing legal recognition for electronic
transactions, facilitating e-governance, and preventing cyber crimes.

Q. How can technology help address gender disparities in education?


Answer: Technology can provide equal learning opportunities for all genders and promote access
to education and professional opportunities.

Short answer type question

Q. How does an individual's digital footprint impact their online privacy and personal
brand? Provide an example to support your answer.
Answer: An individual's digital footprint can expose personal information and influence how they
are perceived online. For instance, sharing inappropriate content on social media may harm their
reputation and affect future opportunities.

Q. Explain how digital footprints are created and expanded through online interactions.
Answer: Digital footprints are formed by an individual's online activities, such as social media
posts, website visits, online purchases, and interactions with others. Each online engagement adds
to the footprint, shaping their online identity.

Q. How can individuals and organizations ensure they are not violating intellectual property
rights while using copyrighted materials for educational or commercial purposes?
Answer: Individuals and organizations should seek proper licensing, obtain permission from the
copyright owner, or use materials that are explicitly labeled for reuse under Creative Commons
licenses.

Q. Discuss the importance of open-source software in fostering innovation and collaboration


within the technology community.
Answer: Open-source software encourages sharing and collaboration, leading to faster
development, higher quality, and a more extensive range of software solutions accessible to
everyone.

Q. How can users differentiate between a legitimate software application and a potentially
harmful trojan or malware?
Answer: Users should only download software from reputable sources, check reviews, and verify
the publisher's authenticity to avoid installing trojans or malware.

123
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Case Study based question:

Case Study1 :
Shreya is a high school student who is an active user of social media platforms. She frequently
posts photos, videos, and personal information online. One day, she notices that some of her private
photos have been shared without her permission. Sarah becomes concerned about her digital
footprint and its potential consequences.

Q1. What is a digital footprint, and how is Shreya’s online activity contributing to it?
Q2. Identify the potential risks and consequences Shreya may face due to her unmanaged
digital footprint.
Q3. As a friend of Shreya, what advice would you give her to better manage and protect her
digital footprint to prevent future incidents?

Answers
A1. A digital footprint is the collection of data left behind by an individual's online activities.
Shreya’s frequent social media posts, photos, and videos contribute to her digital footprint.
A2. Shreya may face privacy breaches, cyberbullying, or negative reputational impact due to her
unmanaged digital footprint.
A3. Shreya should review her privacy settings, limit sharing of personal information, and regularly
audit her online content to manage her digital footprint effectively

Case Study 2:
A software developer named Ravi created a new mobile application and shared it with colleagues
and friends. However, Ravi later discovered that someone had copied the entire code of the
application and released it as their own. Ravi is unsure of what legal actions to take to protect their
intellectual property rights.

Q1. Describe the different types of intellectual property rights, including copyrights, patents,
and trademarks, and their significance for Ravi's mobile application.

Q2. Explain the concept of plagiarism and copyright infringement in the context of the copied
mobile application.

Q3. What are the possible legal measures Ravi can take to address the violation of their
intellectual property rights and seek appropriate recourse?

Answers:

124
Prepared by Ms. Puja Gupta, PGT Comp Sc.

A1. Copyrights protect the code and creative aspects of Ravi's mobile application, while patents
safeguard its novel functionality. Trademarks protect the app's branding.
A2. Plagiarism occurs when someone copies another's work without permission, and copyright
infringement happens when copyrighted material is used without authorization.
A3. Ravi can take legal action against the infringer to protect the intellectual property rights.

125
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Appendix-1
Installing Python
1. Visit the official website of Python
https://www.python.org

2. Go to the Downloads section and choose the Python version for your Operating System
(Windows/macOS etc)

3. Click on Python 3.xx.x (here it is Python 3.12.0) where x may be any sub-version of
Python.
4. Your download will start automatically, save the file at a location of your choice.

126
Prepared by Ms. Puja Gupta, PGT Comp Sc.

5. Double click on the saved file to start the Python Installation.

6. Click on 'Install Now' to start the installation of Python in the default location.
Alternatively, the location may be changed by clicking on the 'Customize Installation'
option.
7. Wait for the installation to finish.

127
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Appendix - 2

Running Python
Using IDLE in Interactive Mode

1. IDLE may be started by typing 'IDLE' on the Windows Search Bar, or choosing IDLE
from the list of applications in the Windows.

2. Click on IDLE (Python) to start IDLE.

3. >>> shows the prompt where Python statements can be written in the Interactive Mode.

128
Prepared by Ms. Puja Gupta, PGT Comp Sc.

4. The outputs will be immediately displayed after the entered statement.

Using Script Mode in IDLE


1. To start writing code in the Script Mode, start IDLE in Interactive Mode.
2. On the Menu Bar, choose File > New File, to open a new window.

3. Start writing your code in the script window.

129
Prepared by Ms. Puja Gupta, PGT Comp Sc.

4. Save your Python Script by going to File > Save, and give any valid file name to your
script with the extension .py

5. Click Save to save your script at a location of your choice.

6. Once in script mode, choose Run > Run Module or press F5 shortcut to run your script.

7. The output (including errors, if any) will be displayed in the prompt window.

130
Prepared by Ms. Puja Gupta, PGT Comp Sc.

8. To Open an existing Python script, choose File > Open and double click on the python
file to Open it in IDLE Script Mode.

131
Prepared by Ms. Puja Gupta, PGT Comp Sc.

Appendix - 3

Working with Pydroid


Pydroid is a Python Interpreter & IDE on Google Play Store to write and run Python code
on the Android device.

1. Go to Google Play Store on your Android Device. Search for 'Pydroid' and Install
the app.

2. Open the Pydroid App.

Using Script Mode

1. Write Python code in the built in code editor or open the existing ones.

132
Prepared by Ms. Puja Gupta, PGT Comp Sc.

2. Write code in the script mode. Run the Python Code by tapping the button (▶). Save
the code.
3. The output is displayed on the screen.

Using Interactive Mode


1. >>> shows the prompt where Python statements can be written in the Interactive
Mode.
2. The output will be displayed after each statement.

BIBLIOGRAPHY
Google
DOE Notes
ChatGPT

133

You might also like