Intro to Python for Computer Science and Data Science

Thistitle is a Pearson Global Edition. The Editorial team at Pearson has workedclosely with educators around the world to include content which is especiallyrelevant to students outside the United States.  For introductory-level Python programming and/ordata-science courses.  A groundbreaking, flexi...

Descripción completa

Detalles Bibliográficos
Autor principal: Deitel, Paul (-)
Otros Autores: Dietal, Harvey, autor (autor)
Formato: Libro electrónico
Idioma:Inglés
Publicado: Harlow : Pearson Education, Limited 2021.
Materias:
Ver en Biblioteca Universitat Ramon Llull:https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009667234306719
Tabla de Contenidos:
  • Cover
  • Digital Resources for Students
  • Intro to Python® for Computer Science and Data Science
  • Half Title
  • Copyright
  • Title Page
  • Dedication
  • Contents
  • Preface
  • Before You Begin
  • 1. Introduction to Computers and Python
  • 1.1 Introduction
  • 1.2 Hardware and Software
  • 1.2.1 Moore's Law
  • 1.2.2 Computer Organization
  • 1.3 Data Hierarchy
  • 1.4 Machine Languages, Assembly Languages and High-Level Languages
  • 1.5 Introduction to Object Technology
  • 1.6 Operating Systems
  • 1.7 Python
  • 1.8 It's the Libraries!
  • 1.8.1 Python Standard Library
  • 1.8.2 Data-Science Libraries
  • 1.9 Other Popular Programming Languages
  • 1.10 Test-Drives: Using IPython and Jupyter Notebooks
  • 1.10.1 Using IPython Interactive Mode as a Calculator
  • 1.10.2 Executing a Python Program Using the IPython Interpreter
  • 1.10.3 Writing and Executing Code in a Jupyter Notebook
  • 1.11 Internet and World Wide Web
  • 1.11.1 Internet: A Network of Networks
  • 1.11.2 World Wide Web: Making the Internet User-Friendly
  • 1.11.3 The Cloud
  • 1.11.4 Internet of Things
  • 1.12 Software Technologies
  • 1.13 How Big Is Big Data?
  • 1.13.1 Big Data Analytics
  • 1.13.2 Data Science and Big Data Are Making a Difference: Use Cases
  • 1.14 Case Study-A Big-Data Mobile Application
  • 1.15 Intro to Data Science: Artificial Intelligence-at the Intersection of CS and Data Science
  • 2. Introduction to Python Programming
  • 2.1 Introduction
  • 2.2 Variables and Assignment Statements
  • 2.3 Arithmetic
  • 2.4 Function print and an Intro to Single- and Double-Quoted Strings
  • 2.5 Triple-Quoted Strings
  • 2.6 Getting Input from the User
  • 2.7 Decision Making: The if Statement and Comparison Operators
  • 2.8 Objects and Dynamic Typing
  • 2.9 Intro to Data Science: Basic Descriptive Statistics
  • 2.10 Wrap-Up
  • 3. Control Statements and Program Development.
  • 3.1 Introduction
  • 3.2 Algorithms
  • 3.3 Pseudocode
  • 3.4 Control Statements
  • 3.5 if Statement
  • 3.6 if…else and if…elif…else Statements
  • 3.7 while Statement
  • 3.8 for Statement
  • 3.8.1 Iterables, Lists and Iterators
  • 3.8.2 Built-In range Function
  • 3.9 Augmented Assignments
  • 3.10 Program Development: Sequence-Controlled Repetition
  • 3.10.1 Requirements Statement
  • 3.10.2 Pseudocode for the Algorithm
  • 3.10.3 Coding the Algorithm in Python
  • 3.10.4 Introduction to Formatted Strings
  • 3.11 Program Development: Sentinel-Controlled Repetition
  • 3.12 Program Development: Nested Control Statements
  • 3.13 Built-In Function range: A Deeper Look
  • 3.14 Using Type Decimal for Monetary Amounts
  • 3.15 break and continue Statements
  • 3.16 Boolean Operators and, or and not
  • 3.17 Intro to Data Science: Measures of Central Tendency-Mean, Median and Mode
  • 3.18 Wrap-Up
  • 4. Functions
  • 4.1 Introduction
  • 4.2 Defining Functions
  • 4.3 Functions with Multiple Parameters
  • 4.4 Random-Number Generation
  • 4.5 Case Study: A Game of Chance
  • 4.6 Python Standard Library
  • 4.7 math Module Functions
  • 4.8 Using IPython Tab Completion for Discovery
  • 4.9 Default Parameter Values
  • 4.10 Keyword Arguments
  • 4.11 Arbitrary Argument Lists
  • 4.12 Methods: Functions That Belong to Objects
  • 4.13 Scope Rules
  • 4.14 import: A Deeper Look
  • 4.15 Passing Arguments to Functions: A Deeper Look
  • 4.16 Function-Call Stack
  • 4.17 Functional-Style Programming
  • 4.18 Intro to Data Science: Measures of Dispersion
  • 4.19 Wrap-Up
  • 5. Sequences: Lists and Tuples
  • 5.1 Introduction
  • 5.2 Lists
  • 5.3 Tuples
  • 5.4 Unpacking Sequences
  • 5.5 Sequence Slicing
  • 5.6 del Statement
  • 5.7 Passing Lists to Functions
  • 5.8 Sorting Lists
  • 5.9 Searching Sequences
  • 5.10 Other List Methods
  • 5.11 Simulating Stacks with Lists
  • 5.12 List Comprehensions.
  • 5.13 Generator Expressions
  • 5.14 Filter, Map and Reduce
  • 5.15 Other Sequence Processing Functions
  • 5.16 Two-Dimensional Lists
  • 5.17 Intro to Data Science: Simulation and Static Visualizations
  • 5.17.1 Sample Graphs for 600, 60,000 and 6,000,000 Die Rolls
  • 5.17.2 Visualizing Die-Roll Frequencies and Percentages
  • 5.18 Wrap-Up
  • 6. Dictionaries and Sets
  • 6.1 Introduction
  • 6.2 Dictionaries
  • 6.2.1 Creating a Dictionary
  • 6.2.2 Iterating through a Dictionary
  • 6.2.3 Basic Dictionary Operations
  • 6.2.4 Dictionary Methods keys and values
  • 6.2.5 Dictionary Comparisons
  • 6.2.6 Example: Dictionary of Student Grades
  • 6.2.7 Example: Word Counts
  • 6.2.8 Dictionary Method update
  • 6.2.9 Dictionary Comprehensions
  • 6.3 Sets
  • 6.3.1 Comparing Sets
  • 6.3.2 Mathematical Set Operations
  • 6.3.3 Mutable Set Operators and Methods
  • 6.3.4 Set Comprehensions
  • 6.4 Intro to Data Science: Dynamic Visualizations
  • 6.4.1 How Dynamic Visualization Works
  • 6.4.2 Implementing a Dynamic Visualization
  • 6.5 Wrap-Up
  • 7. Array-Oriented Programming with NumPy
  • 7.1 Introduction
  • 7.2 Creating arrays from Existing Data
  • 7.3 array Attributes
  • 7.4 Filling arrays with Specific Values
  • 7.5 Creating arrays from Ranges
  • 7.6 List vs. array Performance: Introducing %timeit
  • 7.7 array Operators
  • 7.8 NumPy Calculation Methods
  • 7.9 Universal Functions
  • 7.10 Indexing and Slicing
  • 7.11 Views: Shallow Copies
  • 7.12 Deep Copies
  • 7.13 Reshaping and Transposing
  • 7.14 Intro to Data Science: pandas Series and DataFrames
  • 7.14.1 pandas Series
  • 7.14.2 DataFrames
  • 7.15 Wrap-Up
  • 8. Strings: A Deeper Look
  • 8.1 Introduction
  • 8.2 Formatting Strings
  • 8.2.1 Presentation Types
  • 8.2.2 Field Widths and Alignment
  • 8.2.3 Numeric Formatting
  • 8.2.4 String's format Method
  • 8.3 Concatenating and Repeating Strings.
  • 8.4 Stripping Whitespace from Strings
  • 8.5 Changing Character Case
  • 8.6 Comparison Operators for Strings
  • 8.7 Searching for Substrings
  • 8.8 Replacing Substrings
  • 8.9 Splitting and Joining Strings
  • 8.10 Characters and Character-Testing Methods
  • 8.11 Raw Strings
  • 8.12 Introduction to Regular Expressions
  • 8.12.1 re Module and Function fullmatch
  • 8.12.2 Replacing Substrings and Splitting Strings
  • 8.12.3 Other Search Functions
  • Accessing Matches
  • 8.13 Intro to Data Science: Pandas, Regular Expressions and Data Munging
  • 8.14 Wrap-Up
  • 9. Files and Exceptions
  • 9.1 Introduction
  • 9.2 Files
  • 9.3 Text-File Processing
  • 9.3.1 Writing to a Text File: Introducing the with Statement
  • 9.3.2 Reading Data from a Text File
  • 9.4 Updating Text Files
  • 9.5 Serialization with JSON
  • 9.6 Focus on Security: pickle Serialization and Deserialization
  • 9.7 Additional Notes Regarding Files
  • 9.8 Handling Exceptions
  • 9.8.1 Division by Zero and Invalid Input
  • 9.8.2 try Statements
  • 9.8.3 Catching Multiple Exceptions in One except Clause
  • 9.8.4 What Exceptions Does a Function or Method Raise?
  • 9.8.5 What Code Should Be Placed in a try Suite?
  • 9.9 finally Clause
  • 9.10 Explicitly Raising an Exception
  • 9.11 (Optional) Stack Unwinding and Tracebacks
  • 9.12 Intro to Data Science: Working with CSV Files
  • 9.12.1 Python Standard Library Module csv
  • 9.12.2 Reading CSV Files into Pandas DataFrames
  • 9.12.3 Reading the Titanic Disaster Dataset
  • 9.12.4 Simple Data Analysis with the Titanic Disaster Dataset
  • 9.12.5 Passenger Age Histogram
  • 9.13 Wrap-Up
  • 10. Object-Oriented Programming
  • 10.1 Introduction
  • 10.2 Custom Class Account
  • 10.2.1 Test-Driving Class Account
  • 10.2.2 Account Class Definition
  • 10.2.3 Composition: Object References as Members of Classes
  • 10.3 Controlling Access to Attributes.
  • 10.4 Properties for Data Access
  • 10.4.1 Test-Driving Class Time
  • 10.4.2 Class Time Definition
  • 10.4.3 Class Time Definition Design Notes
  • 10.5 Simulating "Private" Attributes
  • 10.6 Case Study: Card Shuffling and Dealing Simulation
  • 10.6.1 Test-Driving Classes Card and DeckOfCards
  • 10.6.2 Class Card-Introducing Class Attributes
  • 10.6.3 Class DeckOfCards
  • 10.6.4 Displaying Card Images with Matplotlib
  • 10.7 Inheritance: Base Classes and Subclasses
  • 10.8 Building an Inheritance Hierarchy
  • Introducing Polymorphism
  • 10.8.1 Base Class CommissionEmployee
  • 10.8.2 Subclass SalariedCommissionEmployee
  • 10.8.3 Processing CommissionEmployees and SalariedCommissionEmployees Polymorphically
  • 10.8.4 A Note About Object-Based and Object-Oriented Programming
  • 10.9 Duck Typing and Polymorphism
  • 10.10 Operator Overloading
  • 10.10.1 Test-Driving Class Complex
  • 10.10.2 Class Complex Definition
  • 10.11 Exception Class Hierarchy and Custom Exceptions
  • 10.12 Named Tuples
  • 10.13 A Brief Intro to Python 3.7's New Data Classes
  • 10.13.1 Creating a Card Data Class
  • 10.13.2 Using the Card Data Class
  • 10.13.3 Data Class Advantages over Named Tuples
  • 10.13.4 Data Class Advantages over Traditional Classes
  • 10.14 Unit Testing with Docstrings and doctest
  • 10.15 Namespaces and Scopes
  • 10.16 Intro to Data Science: Time Series and Simple Linear Regression
  • 10.17 Wrap-Up
  • 11. Computer Science Thinking: Recursion, Searching, Sorting and Big O
  • 11.1 Introduction
  • 11.2 Factorials
  • 11.3 Recursive Factorial Example
  • 11.4 Recursive Fibonacci Series Example
  • 11.5 Recursion vs. Iteration
  • 11.6 Searching and Sorting
  • 11.7 Linear Search
  • 11.8 Efficiency of Algorithms: Big O
  • 11.9 Binary Search
  • 11.9.1 Binary Search Implementation
  • 11.9.2 Big O of the Binary Search
  • 11.10 Sorting Algorithms
  • 11.11 Selection Sort.
  • 11.11.1 Selection Sort Implementation.