Python Programming : Using Problem Solving Approach
Python Programming : Using Problem Solving Approach
Click to enlarge
Author(s): Thareja, Reema
ISBN No.: 9780199480173
Pages: 560
Year: 201910
Format: Trade Paper
Price: $ 35.00
Dispatch delay: Dispatched between 7 to 15 days
Status: Available

1. Introduction to Computers and Problem Solving Strategies1.1 Introduction1.2 What is a Computer?1.3 History of Computers1.4 Characteristics of Computers1.5 Classification of Computers1.6 Basic Applications of Computers1.


7 Stored Program Concept1.7.1 Types of Stored Program Computers1.8 Components and Functions of a Computer System1.9 Concept of Hardware and Software1.9.1 Hardware1.9.


2 Software1.10 Central Processing Unit (CPU): Basic Architecture1.11 Input and Output devices1.12 Computer Memory1.12.1 Memory Hierarchy1.12.2 Primary Memory1.


12.3 Secondary Storage Devices1.13 Classification of Computer Software1.13.1 System Software1.13.2 Application Software1.14 Representation of Data: Bits and Bytes1.


15 Problem Solving Strategies1.16 Program Design Tools: Algorithms, Flowcharts, Pseudocodes1.16.1 Algorithms1.16.2 Flowcharts1.16.3 Pseudocodes1.


17 Types of Errors1.18 Testing and Debugging ApproachesAnnexure 1 - Types of Operating Systems 2. Introduction to Object Oriented Programming (OOP)2.1 Computer Programming and Programming Languages2.2 Generations of Programming Languages2.2.1 First Generation: Machine Language2.2.


2 Second Generation: Assembly Language2.2.3 Third Generation: High-level Language2.2.4 Fourth Generation: Very High-level Languages2.2.5 Fifth Generation Programming Language2.3 Programming Paradigms2.


3.1 Monolithic Programming2.3.2 Procedural Programming2.3.3 Structured Programming2.3.4 Object Oriented Programming (OOP)2.


4 Features of Object Oriented Programming2.4.1 Classes2.4.2 Objects2.4.3 Method and Message Passing2.4.


4 Inheritance2.4.5 Polymorphism2.4.6 Containership2.4.7 Reusability2.4.


8 Delegation2.4.9 Data Abstraction and Encapsulation2.5 Merits and Demerits of Object Oriented Programming Language2.6 Applications of Object Oriented Programming2.7 Differences Between Popular Programming Languages 3. Basics of Python Programming3.1 Features of Python3.


2 History of Python3.3 The Future of Python3.4 Writing and Executing First Python Program3.5 Literal Constants3.5.1 Numbers3.5.2 Strings3.


6 Variables and Indentifiers3.7 Data Types3.7.1 Assigning or Initializing Values to Variables3.7.2 Multiple Assignment3.7.3 Multiple Statements on a Single Line3.


7.4 Boolean3.8 Input Operation3.9 Comments3.10 Reserved Words3.11 Indentation3.12 Operators and Expressions3.12.


1 Arithmetic Operators3.13.2 Comparison Operators3.12.3 Assignment and In-place or Shortcut Operators3.12.4 Unary Operators3.12.


5 Bitwise Operators3.12.6 Shift Operators3.12.7 Logical Operators3.12.8 Membership Operators3.12.


9 Identity Operators3.12.10 Operators Precedence and Associativity3.13 Expressions in Python3.14 Operations on Strings3.14.1 Concatenation3.14.


2 Multiplication (or String Repetition)3.14.3 Slice a String3.15 Other Data Types3.15.1 Tuples3.15.2 Lists3.


15.3 Dictionary3.16 Type ConversionAnnexure 2 - Installing PythonAnnexure 3 - Comparison between Python 2.x and Python 3.x VersionsAnnexure 4 - Testing and Debugging 4. Decision Control Statements4.1 Introduction to Decision Control Statements4.2 Selection/Conditional Branching Statements4.


2.1 if Statement4.2.2 if-else Statement4.2.3 Nested if Statements4.2.4 if-elif-else Statement4.


3 Basic Loop Structures/ Iterative Statements4.3.1 while loop4.3.2 for Loop4.3.3 Selecting an appropriate loop4.4 Nested Loops4.


5 The break Statement4.6 The continue Statement4.7 The pass Statement4.8 The else Statement used with LoopsCase Study 1 - Simple CalculatorCase Study 2 - Generating a Calendar 5. Functions and Modules5.1 Introduction5.1.1 Need for Functions5.


2 Function Declaration and Definition5.3 Function Definition5.4 Function Call5.4.1 Function Parameters5.5 Variable Scope and Lifetime5.5.1 Local and Global Variables5.


5.2 Using the Global Statement5.5.3 Resolution of Names5.6 The return statement5.7 More on Defining Functions5.7.1 Required Arguments5.


7.2 Keyword Arguments5.7.3 Default Arguments5.7.4 Variable-length Arguments5.8 Lambda Functions or Anonymous Functions5.9 Documentation Strings5.


10 Good Programming Practices5.11 Recursive Functions5.11.1 Greatest Common Divisor5.11.2 Finding Exponents5.11.3 The Fibonacci Series5.


11.4 Recursion vs Iteration5.12 Modules5.12.1 The from'import statement5.12.2 Name of Module5.12.


3 Making your own Modules5.12.4 The dir() function5.12.5 The Python Module5.12.6 Modules and Namespaces5.13 Packages in Python5.


14 Standard Library modules5.15 Globals(), Locals(), and Reload()5.16 Function RedefinitionAnnexure 5 - Functions as ObjectsCase Study 3 - Tower of HanoiCase Study 4 - Shuffling a Deck of Cards 6. Python Strings RevisitedIntroduction6.1 Concatenating, Appending, and Multiplying Strings6.2 Strings are Immutable6.3 String Formatting Operator6.4 Built-in String Methods and Functions6.


5 Slice Operation6.5.1 Specifying Stride While Slicing Strings6.6 ord() and chr() Functions6.7 in and not in operators6.8 Comparing Strings6.9 Iterating String6.10 The String Module6.


11 Regular Expressions6.11.1 The match() Function6.11.2 The search() Function6.11.3 The sub() Function6.11.


4 The findall() and finditer() Functions6.11.5 Flag Options6.12 Metacharacters in Regular Expression6.12.1 Character Classes6.12.2 Groups6.


12.3 Application of Regular Expression to Extract Email 7. File Handling7.1 Introduction7.2 File Path7.3 Types of Files7.3.1 ASCII Text Files7.


3.2 Binary Files7.4 Opening and Closing Files7.4.1 The open() Function7.4.2 The File Object Attributes7.4.


3 The close() Method7.5 Reading and Writing Files7.5.1 write() and writelines() Methods7.5.2 append() Method7.5.3 The read() and readline() Methods7.


5.4 Opening Files using with Keyword7.5.5 Splitting Words7.5.6 Some Other Useful File Methods7.6 File Positions7.7.


Renaming and Deleting Files7.8 Directory Methods7.8.1 Methods from the os ModuleCase Study 5 - Creating a Hash File (or a message digest of a file)Case Study 6 - Mail Merge ProgramCase Study 7 - Finding Resolution of an Image 8. Data Structures8.1 Sequence8.2 Lists8.2.


1 Access Values in Lists8.2.2 Updating Values in Lists8.2.3 Nested Lists8.2.4 Cloning Lists8.2.


5 Basic List Operations8.2.6 List Methods8.2.7 Using Lists as Stack8.2.8 Using Lists as Queues8.2.


9 List Comprehensions8.2.10 Looping in Lists8.3 Functional Programming8.3.1 filter() Function8.3.2 map() Function8.


3.3 reduce() Function8.4 Tuple8.4.1 Creating Tuple8.4.2 Utility of Tuples8.4.


3 Accessing Values in a Tuple8.3.4 Updating Tuple8.4.5 Deleting Elements in Tuple8.4.6 Basic Tuple Operations8.4.


7 Tuple Assignment8.4.8 Tuples for Returning Multiple Values8.3.9 Nested Tuples8.4.10 Checking the Index: index() method8.4.


11 Counting the Elements: count()Method8.4.12 List Comprehension and Tuples8.4.13 Variable-length Argument Tuples8.4.14 The zip() Function8.4.


16 Advantages of Tuple over List8.5 Sets8.5.1 Creating a Set8.6 Dictionaries8.6.1 Creating a Dictionary8.6.


2 Accessing Values8.6.2 Adding and Modifying an Item in a Dictionary8.6.3 Modifying an Entry8.6.4 Deleting Items8.6.


5 Sorting Items in a Dictionary8.6.6 Looping over a Dictionary8.6.7 Nested Dictionaries8.6.8 Built-in Dictionary Functions and Methods8.6.


9 Difference between a List and a Dictionary8.6.10 String Formatting with Dictionaries8.6.11 When to use which Data Structure?8.6.12 List vs Tuple vs Dictionary vs SetAnnexure 6 - Iterator and Generator 9. Classes and Objects9.


1 Introduction9.2 Classes and Objects9.2.1 Defining Classes9.2.2 Creating Objects9.2.3 Data Abstraction and Hiding through Classes9.


3 Class Method and self Argument9.4 The ULULinitULUL() Method (The Class Constructor)9.5 Class Variables and Object Variables9.6 The ULULdelULUL() Method9.7 Other Special Methods9.8 Public and Private Data Members9.9 Private Methods9.10 Calling a Class Method from Another Class Method9.


11 Built-in Functions to Check, Get, Set, and Delete Class Attributes9.12 Built-in Class Attributes9.13 Garbage Collection (Destroying Objects)9.14 Class Methods9.15 Static MethodsAnnexure 7 - Getters, Setters, @property, and @deleter 10. Inheritance10.1 Introduction10.2 Inheriting Classes in Python10.


2.1 Polymorphism and Method Overriding10.3 Types of Inheritance10.3.1 Multiple Inheritance10.3.2 Multi-level Inheritance10.3.


3 Multi-path Inheritance10.4 Composition or Containership or Complex Objects10.5 Abstract Classes and Interfaces10.6 Metaclass 11. Operator Overloading11.1 Introduction11.1.1 Concept Of Operator Overloading11.


1.2 Advantage of Operator Overloading11.2 Implementing Operator Overloading11.3 Reverse Adding11.4 Overriding _getitem_() and _setitem_() Methods11.5 Overriding the in Operator11.6 Overloading Miscellaneous Functions11.7 Overriding the _call_() Method 12.


Error and Exception Handling12.1 Introduction to Errors and Exceptions12.1.1 Syntax Errors12.1.2 Logic Error12.1.3 Exceptions12.


2 Handling Exceptions12.3 Multiple Except Blocks12.4 Multiple Exceptions in a Single Block12.5 Except Block Without Exception12.6 The else Clause12.7 Raising Exceptions12.8 Instantiating Exceptions12.9 Handling Exceptions in Invoked Functions12.


10 Built-in and User-defined Exceptions12.11 The finally Block12.12 Pre-defined Clean-up Action12.13 Re-raising Exception12.14 Assertions in PythonCase Study 8 - Compressing String and Files Appendix A - Multi-threadingAppendix B - GUI Programming with tkinter PackageAppendix C - Simple Graphics Using TurtleAppendix D - Plotting Graphs in PythonAppendix E - CGI/Web Programming Using Python.


To be able to view the table of contents for this publication then please subscribe by clicking the button below...
To be able to view the full description for this publication then please subscribe by clicking the button below...