1 of 132

PYTHON FUNDAMENTALS�S.B.Gopal, AP/ECE

2 of 132

Unit 2:

Computational Thinking and Programming

XI

Computer Science (083)

Board : CBSE

Courtesy CBSE

3 of 132

CHAPTER - 02�PYTHON FUNDAMENTALS

4 of 132

INTRODUCTION

5 of 132

INTRODUCTION

Python is a high-level, interpreted and general-purpose dynamic programming language that focuses on code readability. The syntax in Python helps the programmers to do coding in fewer steps as compared to Java or C++.

Let us learn the basic elements of python programming

6 of 132

What is Character Set?

7 of 132

PYTHON CHARACTERSET

What is Character Set?

Character set is a bunch of identifying elements in the programming language.

8 of 132

PYTHON CHARACTERSET

9 of 132

PYTHON CHARACTERSET

PYTHON CHARACTER SET

    • Letters:- A-Z, a-z
    • Digits:- 0 to 9
    • Special Symbols:- space + - / ( ) [ ] = ! = < > , ‘ “ $ # ; : ? &
    • White Spaces:- Blank Space , Horizontal Tab, Vertical tab, Carriage Return.
    • Other Characters:- Python can process all 256 ASCII and Unicode Characters.

10 of 132

What is Token or lexical unit?

11 of 132

TOKENS OR LEXICAL UNIT

What is Token?

Individual elements that are identified by programming language are called tokens or lexical unit.

12 of 132

TYPES OF LEXICAL UNITS

13 of 132

TOKENS / LEXICAL UNITS

TOKENS

1. Key Words

2. Identifiers

3. Literals

4. Operators.

5. Punctuators

14 of 132

What is Keyword or reserved word?

15 of 132

What is Keyword?

Keywords are also called as reserved words these are having special meaning in python language. The words are defined in the python interpreter hence these cant be used as programming identifiers.

1. Keyword/Reserved Word

16 of 132

Some Keywords of Python Language

17 of 132

Some Keywords of Python Language

and

assert

break

class

continue

def

del

elif

else

except

exec

finally

for

from

18 of 132

Some Keywords of Python Language

global

if

import

in

is

lambda

not

or

pass

print

raise

return

try

while

with

yield

19 of 132

What is an identifier?

20 of 132

2. IDENTIFIERS

What is an identifier?

A Python Identifier is a name given to a function, class, variable, module, or other objects that you’ll be using in your Python program.

In short, its a name appeared in the program.

For example: a, b, c

a b and c are the identifiers and

a b & c and , are the tokens

21 of 132

PYTHON NAMING CONVENTIONS

IDENTIFIER FORMATION RULES

OR

22 of 132

PYTHON NAMING CONVENTIONS

What are the python naming conventions?

1. An identifier can be a combination of uppercase letters, lowercase letters, underscores, and digits (0-9). Hence, the following are valid identifiers: myClass, my_variable, var_1, and print_hello_world.

23 of 132

PYTHON NAMING CONVENTIONS

What are the python naming conventions?

2. The first character must be letter.

  1. Special characters such as %, @, and $ are not allowed within identifiers.

4. An identifier should not begin with a number. Hence, 2variable is not valid, but variable2 is acceptable.

24 of 132

What are the python naming conventions?

5. Python is a case-sensitive language and this behaviour extends to identifiers. Thus, Labour and labour are two distinct identifiers in Python.

  1. You cannot use Python keywords as identifiers.

PYTHON NAMING CONVENTIONS

25 of 132

What are the python naming conventions?

  1. You cannot use Python keywords as identifiers.
  2. You can use underscores to separate multiple words in your identifier.

PYTHON NAMING CONVENTIONS

26 of 132

PYTHON NAMING CONVENTIONS

SOME VALID IDENTIFIERS:

Myfile1 DATE9_7_8 y3m9d3 _xs

MYFILE _FXd

SOME INVALID IDENTIFIERS:

MY-REC 28dre break

elif false del

27 of 132

What is literals?

28 of 132

3. LITERALS / CONSTANT VALUES

What is literals?

Literals are also called as constants or constant values these are the values which never change during the execution of program.

29 of 132

What are the types of literals?

30 of 132

TYPES OF LITERALS / CONSTANT VALUES

What are the types of literals?

1) String Literals or Constants.

2) Numeric Literals or Constants.

3) Boolean Literals or Constants.

4) Special Literal None.

5) Literal Collections.

31 of 132

What is string?

32 of 132

1. STRING LITERALS OR CONSTANTS

What is string?

Sequence of letters enclosed in quotes is called string or string literal or constant.

Python supports both form of quotes i.e.

‘Hello’

“Hello”

33 of 132

Representation of String

34 of 132

REPRESENTATION OF STRING

>>> s = “Hello Python”

This is how Python would index the string:

Forward Indexing

Backward Indexing

35 of 132

REPRESENTATION OF STRING

To access the first character on the string you just created, type and enter the variable name s and the index 0 within square brackets like this:

>>>s[0]

You’ll get this output:

‘H’

36 of 132

REPRESENTATION OF STRING

To access the last character, you can use this expression:

>>>s[len(s)-1]

You’ll get the output:

‘n’

Len() function is used to find the length of the string.

37 of 132

REPRESENTATION OF STRING

The expression introduces you to the len function. There is actually an easier way to

access the last item on the string:

>>>s[-1]

‘n’

To access the penultimate character:

>>>s[-2]

‘o’

38 of 132

TYPES OF STRINGS

What are the types of strings supported in python?

Python supports two ways of representation of strings:

1) Single Line Strings.

2) Multi Line Strings.

39 of 132

TYPES OF STRINGS

40 of 132

SINGLE LINE STRINGS

Strings created using single quote or double quote must end in one line are called single line strings

For Example:

Item=“Computer”

Or

Item= ‘Computer’

41 of 132

MULTI LINE STRINGS

Strings created using single quote or double quote and spread across multiple lines are called Multi Line Strings.

by adding backslash \ one can continue to type on next line.

For instance: Item = ‘Key\

board’

42 of 132

SIZE OF STRINGS

43 of 132

SIZE OF STRINGS

‘\\’ Size is 1 (\ is an escape sequence)

‘abc’ size is 3

“\ab” size is 2

“Raama\’s Laptop” size is 13

44 of 132

Strings with Triple Quotes

45 of 132

STRINGS WITH TRIPLE QUOTES

For multi line strings created by triple quotes, while calculating size, the EOL(End of Line) character at the end of line is also counted.

For instance:

Str2=“’x

y

Z”’

Enter keys are considered as EOL so size of str2 is 5

46 of 132

Escape Sequences

47 of 132

ESCAPE SEQUENCES

Back Slash

Single Quote (‘)

Double Quote (“)

\\

\’

\”

48 of 132

ESCAPE SEQUENCES

ASCII Bell

ASCII Backspace

ASCII Formfeed

\a

\b

\f

49 of 132

ESCAPE SEQUENCES

New Line

Carriage return

Horizontal Tab

\n

\r

\t

50 of 132

ESCAPE SEQUENCES

Vertical Tab

16 bit hex value

Octal Value

\t

\x

\ooo

51 of 132

Back Slash

\\

52 of 132

Single Quote

\’

53 of 132

Double Quote

\”

54 of 132

ASCII Bell

\a

55 of 132

ASCII Backspace

\b

56 of 132

ASCII Form Feed

\f

57 of 132

New Line

\n

58 of 132

Carriage Return

\r

59 of 132

Horizontal Tab

\t

60 of 132

Vertical Tab

\v

61 of 132

16 bit Hex Val

\x

62 of 132

Note: ooo represents 3 octal digits.

Octal Value

\ooo

63 of 132

2. NUMERICAL LITERALS

Numerical Literals have the following types:

int or integers - Whole numbers

float - real values

Complex - Complex numbers

64 of 132

2. NUMERICAL LITERALS

Numerical Literals have the following types:

int or integers - Whole numbers

float - real values

Complex - Complex numbers

65 of 132

INTEGER LITERALS OR CONSTANTS

  • Decimal Integer Literals: Any whole number (+ve) or (-ve).

66 of 132

INTEGER LITERALS OR CONSTANTS

  • Octal Integer Literals(base 8): A Sequence of digits starting with 0O (digit zero followed by letter o) is taken to be an Octal Integer Literals.

67 of 132

INTEGER LITERALS OR CONSTANTS

  • Hexadecimal Integer Literals (base 16): Sequence of digits preceded by ox or OX is hexadecimal integer literals

68 of 132

INTEGER LITERALS OR CONSTANTS

  • Binary literals (base 2): To signify binary literals, you’ll use the prefix ‘0B’ or ‘0b’ (zero and uppercase or lowercase ‘b’).

69 of 132

Converting Integers to their String Representation

70 of 132

oct ( )

To convert an integer into its string representation, you can use the functions hex(), bin(), and oct().

To convert the integer 7 to its octal literal, type and enter oct(7) on the command prompt. You’ll get the output ‘0o7’:

71 of 132

hex ( )

Here is what happens when you convert the integer 2572 to a hexadecimal literal:

72 of 132

bin ( )

see what happens when you use the bin() function to convert the integer 12 to its binary string:

73 of 132

FLOATING POINT LITERALS OR CONSTANTS

74 of 132

FLOATING POINT LITERALS OR CONSTANTS

Floating point literals are also called as real literals having fractional part.

These may be written in one of the two forms:

  1. Fractional Form: for example 15.75

  • Exponent Form: It consists of two parts Mantissa and Exponent. for example 5.8 can be represented as 0.58 x 10-1 = 0.58E01. where mantissa part is 0.58 and E01 is the exponent.

75 of 132

FLOATING POINT LITERALS OR CONSTANTS

Float type

76 of 132

BOOLEAN LITERALS OR CONSTANTS.

77 of 132

3) BOOLEAN LITERALS OR CONSTANTS.

A Boolean literal in python is used to represent the Boolean values (true or false).

78 of 132

Special Literal - None

79 of 132

4) SPECIAL LITERAL NONE

The None literal is used to indicate absence of value.

For example: val = None

80 of 132

LITERAL COLLECTIONS

81 of 132

5) LITERAL COLLECTIONS

Python supports literal collections also such as tuple and lists ..etc

It will be to complex to discuss as we are in the beginning, subsequent chapters we will cover literal collections.

82 of 132

4. OPERATORS

83 of 132

OPERATORS

What is an operator?

Operators are tokens that trigger some computation when applied to a variable.

In detail we study in the next chapter.

84 of 132

5. PUNCTUATORS

85 of 132

PUNCTUATORS

Punctuators are also called as separators

The Followings are used as punctuators:

Brackets [ ]

Parentheses ( )

Braces { }

Comma ,

Semicolon ;

Colon :

Asterisk *

Ellipsis …

Equal Sign =

Pound Sign #

86 of 132

WHITE SPACE

87 of 132

WHITE SPACE

• Use consistent indentation instead.

• The first line with less indentation is outside of the block.

• The first line with more indentation starts a nested block.

• Often a colon appears at the start of a new block. (E.g. for function and class definitions.).

88 of 132

COMMENTS

89 of 132

COMMENTS

Comments are non executable statements in a program.

Single line comment always starts with #

Multiline comment will be in triple quotes. For example “’ write a program to find the simple interest “’.

Note: Triple apostrophe is called docstrings.

90 of 132

STATEMENTS

91 of 132

STATEMENTS

In computer terminology statement refers to an instruction.

Program contains several statements. A collection of statements makes program

Another name for a program is code.

92 of 132

FUNCTIONS

93 of 132

FUNCTIONS

What is function?

Function is a self contained program segment which carries out some specific well defined task.

For Example:

def sqr( num ):

result= num *num

print ("Square = " , result)

sqr()

94 of 132

PYTHON PROGRAMMING CONVENTIONS

95 of 132

PYTHON PROGRAMMING CONVENTIONS

Statement Termination: python does not use any symbol to terminate the statement.

Maximum Line Length: Line Length be maximum 79 characters.

Whitespaces: you should always have whitespace around operators but not with parenthesis.

96 of 132

PYTHON PROGRAMMING CONVENTIONS

Block or Code Block: A group of statements which are part of another statement or function is called Block or Code Block.

Case Sensitive: Python is case sensitive.

97 of 132

VARIABLES AND ASSIGNMENTS

98 of 132

VARIABLES AND ASSIGNMENTS

Named labels are called variables.

For example: marks =86

78

79

80

81

82

83

84

85

86

87

2000

2016

2018

2026

2032

2044

2048

2050

2054

2068

marks refers to location 2054

99 of 132

VARIABLES AND ASSIGNMENTS

Now marks = 81

78

79

80

81

82

83

84

85

86

87

2000

2016

2018

2026

2032

2044

2048

2050

2054

2068

marks refers to location 2026

Note: Variables in python do not have fixed locations unlike other programming languages

100 of 132

VARIABLES AND ASSIGNMENTS

lvalues & rvalues:

Lvalue: Expressions that is on LHS (Left Hand Side) is called Lvalue.

Rvalue: Expressions that is on RHS (Right Hand Side) is called Rvalue.

101 of 132

VARIABLES AND ASSIGNMENTS

Multiple Assignments

Python is very versatile with assignment statements.

1. Assigning same value to multiple variables:

a=b=c=d=e=10

102 of 132

VARIABLES AND ASSIGNMENTS

Multiple Assignments

2. Assigning Multiple values to multiple variables:

p,q,r =5,10,15

print(q, r) will print 10 15

p,q=q,p

print (p,q) will print 10 5

103 of 132

VARIABLES AND ASSIGNMENTS

Multiple Assignments

2. Assigning Multiple values to multiple variables:

a,b,c = 5,10,7

b,c,a = a+1, b+2, c-1

print(a,b,c) will print 6 6 12

Now,

X=10

104 of 132

VARIABLES AND ASSIGNMENTS

Multiple Assignments

Expressions separated by commas are evaluated from left to right.

Now,

x = 10

y,y = x+2,x+5

y,y = 12,15

First It will assign y = 12 then y = 15

So print(y) will print 15

105 of 132

VARIABLES AND ASSIGNMENTS

Dynamic Typing:

A variable pointing to a value of certain type can be made to point to a value/object of different type this is called Dynamic Typing.

x=10

print(x)

x=“ Hello World”

print(x)

106 of 132

VARIABLES AND ASSIGNMENTS

Output will be

10

Hello World

10

10

Hello World

x

x

107 of 132

VARIABLES AND ASSIGNMENTS

Caution with Dynamic Typing:

x = ‘day’

y = x/2

Error! String can not be divided.

108 of 132

VARIABLES AND ASSIGNMENTS

type() function:

To know the data type of a value which is pointing use type ( )

>>>a=10

>>>type(a)

<class ‘int’>

>>>a=20.4

>>>type(a)

<class ‘float’>

Type returned as integer

Type returned as float

109 of 132

VARIABLES AND ASSIGNMENTS

type() function:

To know the data type of a value which is pointing use type ( )

>>>a=“Hello”

>>>type(a)

<class ‘str’>

Type returned as string

110 of 132

INPUT ( ) FUNCTION

111 of 132

INPUT ( ) FUNCTION

Input( ) Function is a built in function of python used to read values from the user

The general format or syntax of the input() is:

Variable_to_hold_the_value=input(message)

For Example:

Where,

variable_to_Hold_the_Value is a variable which is the label for a memory location where the value is stored.

112 of 132

INPUT ( ) FUNCTION

For Example:

p = input(“Enter the value”)

x = int(input(“Enter x value”))

reads the value and converts it in to integer type

data or value.

y=float(input(“Enter y value”))

reads the value and converts it in to float type

data or value.

113 of 132

INPUT ( ) FUNCTION

int ( ) and float ( ) Functions:

Python offers two functions to be used with input( ) to convert the received values:

Example 1: >>age = int(input(“Enter age”))

Example 2: >>sal=float(input(“Enter salary))

114 of 132

PRINT ( ) FUNCTION

115 of 132

PRINT ( ) FUNCTION

print( ) Function is a built in function of python used to display the values on the screen

The general format or syntax of the input() is:

print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)

The print function can print an arbitrary number of values ("value1, value2, ..."), which are separated by commas. These values are separated by blanks. In the following example we can see two print calls. We are printing two values in both cases, i.e. a string and a float number:

116 of 132

PRINT ( ) FUNCTION

print() Parameters:

objects - object to the printed. * indicates that there may be more than one object

sep - objects are separated by sep. Default value: ' ‘ end - end is printed at last

file - must be an object with write(string) method. If omitted it, sys.stdout will be used which prints objects on the screen.

flush - If True, the stream is forcibly flushed. Default value: False

117 of 132

PRINT ( ) FUNCTION

print("Python is fun.")

a = 5

#Two objects are passed:

print("a =", a)

b = a

# Three objects are passed:

print('a =', a, '= b‘)

Output

Python is fun.

a = 5

a = 5 = b

Example 1: How print() works in Python?

118 of 132

PRINT ( ) FUNCTION

>>> print("a = ", a)

a = 3.564

>>> print("a = \n", a)

a =

3.564

>>>

Example 2: How print() works in Python?

119 of 132

Any Questions Please

120 of 132

CLASS TEST �ON �PYTHON FUNDAMENTALS�CHAPTER

121 of 132

CLASS TEST ON PYTHON FUNDAMENTALS

Each carries 2 Marks Questions (10 x 2 = 20)

1. What is EOL?

2. What is an escape sequence?

3. What is the maximum line length in a python program?

4. Write any four keywords of python language

5. What are the types of Assignment statements? Explain

6. Explain with a diagram how a variable refers to a memory location?

122 of 132

CLASS TEST ON PYTHON FUNDAMENTALS

Each carries 2 Marks Questions (10 x 2 = 20)

7. What is Dynamic typing?

8. Write any four python naming conventions

9. What is input ( ) function? Write down the general format of input ( ) function and explain with proper example.

10. What is print ( ) function? Write down the general format of print ( ) function and explain with proper example.

***

123 of 132

QUESTION BANK

ON

CHAPTER 2

PYTHON FUNDAMENTALS

124 of 132

1. What is character set?

2. What is token?

3. List the types of tokens

4. What is keyword?

5. What is an identifier? Give suitable example.

6. What is a literal?

7. What is string?

8. What is single line string?

9. What is multi line string?

10. What is EOL?

11. What is an escape sequence?

12. What is Boolean literal?

CHAPTER 2: PYTHON FUNDAMENTALS

One Mark Questions

125 of 132

13. What is none?

14. What is an operator?

15. What is Unary Operator?

16. What is Binary Operator?

17. List the shift operators

18. List the Bitwise operators

19. What is an assignment statement?

20. What is Punctuators?

21. What is comment?

22. What is whitespace?

23. What is statement?

CHAPTER 2: PYTHON FUNDAMENTALS

One Mark Questions

126 of 132

24. Weather python uses statement termination? Justify your answer

25. What is the maximum line length in a python program?

26. What is Block?

27. What is Code Block?

28. What is Code?

29. What do you mean by case sensitive language?

CHAPTER 2: PYTHON FUNDAMENTALS

One Mark Questions

127 of 132

30. What is variable?

31. What is Lvalue?

32. What is Rvalue?

33. What is an Assignment statement?

34. What is Dynamic typing?

CHAPTER 2: PYTHON FUNDAMENTALS

One Mark Questions

128 of 132

CHAPTER 2: PYTHON FUNDAMENTALS

Two Marks Questions

1. Explain the character set of python

2. What are the types of tokens supported in python language?

3. Write any four keywords of python language

4. What are the types of literals?

5. Explain Boolean literals

6. What are relational operators?

7. What are the types of Assignment statements? Explain

8. What is General Structure or General format or Syntax?

129 of 132

CHAPTER 2: PYTHON FUNDAMENTALS

Two Marks Questions

9. What are the types of comments? Explain with suitable examples

10. Explain with a diagram how a variable refers to a memory location?

11. While dealing with dynamic typing what caution must be taken care of? Explain with suitable example.

130 of 132

CHAPTER 2: PYTHON FUNDAMENTALS

Three Marks Questions

1. What are the python naming conventions?

2. Explain the representation of string in python language.

3. Explain the types of strings supported by python language.

4. Explain escape sequences.

5. Explain numerical literals supported in python language.

6. Explain the Floating point literals supported in python language.

131 of 132

CHAPTER 2: PYTHON FUNDAMENTALS

Three Marks Questions

7. Explain the General structure of python program and give example.

8. What is whitespace how its useful in python programming?

9. What is input ( ) function? Write down the general format of input ( ) function and explain with proper example.

10. What is print ( ) function? Write down the general format of print ( ) function and explain with proper example.

132 of 132

Thank You