Differences between revisions 1 and 2
Revision 1 as of 2018-07-22 10:17:55
Size: 5070
Editor: FrBrGeorge
Comment:
Revision 2 as of 2018-07-22 10:20:55
Size: 5138
Editor: FrBrGeorge
Comment:
Deletions are marked like this. Additions are marked like this.
Line 44: Line 44:
 1. Case study: interface design
  * The turtle module
  * Simple repetition
  * Exercises
  * Encapsulation
  * Generalization
  * Interface design
  * Refactoring
  * A development plan
  * docstring
* Debugging
  * Glossary
  * Exercises
## 1. Case study: interface design
## * The turtle module
## * Simple repetition
## * Exercises
## * Encapsulation
## * Generalization
## * Interface design
## * Refactoring
## * A development plan
## * docstring
##
* Debugging
## * Glossary
## * Exercises
Line 108: Line 108:
 1. Case study: word play
  * Reading word lists
  * Exercises
  * Search
  * Looping with indices
  * Debugging
  * Glossary
  * Exercises
## 1. Case study: word play
## * Reading word lists
## * Exercises
## * Search
## * Looping with indices
## * Debugging
## * Glossary
## * Exercises
Line 154: Line 154:
 1. Case study: data structure selection
  * Word frequency analysis
  * Random numbers
  * Word histogram
  * Most common words
  * Optional parameters
  * Dictionary subtraction
  * Random words
  * Markov analysis
  * Data structures
  * Debugging
  * Glossary
  * Exercises
## 1. Case study: data structure selection
## * Word frequency analysis
## * Random numbers
## * Word histogram
## * Most common words
## * Optional parameters
## * Dictionary subtraction
## * Random words
## * Markov analysis
## * Data structures
## * Debugging
## * Glossary
## * Exercises

Введение в ЯП Python3

Проект курса на основе учебника Think Python: How to Think Like a Computer Scientist


  1. The way of the program
    • What is a program?
    • Running Python
    • The first program
    • Arithmetic operators
    • Values and types
    • Formal and natural languages
    • Debugging
    • Glossary
    • Exercises
  2. Variables, expressions and statements
    • Assignment statements
    • Variable names
    • Expressions and statements
    • Script mode
    • Order of operations
    • String operations
    • Comments
    • Debugging
    • Glossary
    • Exercises
  3. Functions
    • Function calls
    • Math functions
    • Composition
    • Adding new functions
    • Definitions and uses
    • Flow of execution
    • Parameters and arguments
    • Variables and parameters are local
    • Stack diagrams
    • Fruitful functions and void functions
    • Why functions?
    • Debugging
    • Glossary
    • Exercises

  1. Conditionals and recursion
    • Floor division and modulus
    • Boolean expressions
    • Logical operators
    • Conditional execution
    • Alternative execution
    • Chained conditionals
    • Nested conditionals
    • Recursion
    • Stack diagrams for recursive functions
    • Infinite recursion
    • Keyboard input
    • Debugging
    • Glossary
    • Exercises
  2. Fruitful functions
    • Return values
    • Incremental development
    • Composition
    • Boolean functions
    • More recursion
    • Leap of faith
    • One more example
    • Checking types
    • Debugging
    • Glossary
    • Exercises
  3. Iteration
    • Reassignment
    • Updating variables
    • The while statement
    • break
    • Square roots
    • Algorithms
    • Debugging
    • Glossary
    • Exercises
  4. Strings
    • A string is a sequence
    • len
    • Traversal with a for loop
    • String slices
    • Strings are immutable
    • Searching
    • Looping and counting
    • String methods
    • The in operator
    • String comparison
    • Debugging
    • Glossary
    • Exercises

  1. Lists
    • A list is a sequence
    • Lists are mutable
    • Traversing a list
    • List operations
    • List slices
    • List methods
    • Map, filter and reduce
    • Deleting elements
    • Lists and strings
    • Objects and values
    • Aliasing
    • List arguments
    • Debugging
    • Glossary
    • Exercises
  2. Dictionaries
    • A dictionary is a mapping
    • Dictionary as a collection of counters
    • Looping and dictionaries
    • Reverse lookup
    • Dictionaries and lists
    • Memos
    • Global variables
    • Debugging
    • Glossary
    • Exercises
  3. Tuples
    • Tuples are immutable
    • Tuple assignment
    • Tuples as return values
    • Variable-length argument tuples
    • Lists and tuples
    • Dictionaries and tuples
    • Sequences of sequences
    • Debugging
    • Glossary
    • Exercises

  1. Files
    • Persistence
    • Reading and writing
    • Format operator
    • Filenames and paths
    • Catching exceptions
    • Databases
    • Pickling
    • Pipes
    • Writing modules
    • Debugging
    • Glossary
    • Exercises
  2. Classes and objects
    • Programmer-defined types
    • Attributes
    • Rectangles
    • Instances as return values
    • Objects are mutable
    • Copying
    • Debugging
    • Glossary
    • Exercises
  3. Classes and functions
    • Time
    • Pure functions
    • Modifiers
    • Prototyping versus planning
    • Debugging
    • Glossary
    • Exercises
  4. Classes and methods
    • Object-oriented features
    • Printing objects
    • Another example
    • A more complicated example
    • The init method
    • The str method

    • Operator overloading
    • Type-based dispatch
    • Polymorphism
    • Debugging
    • Interface and implementation
    • Glossary
    • Exercises
  5. Inheritance
    • Card objects
    • Class attributes
    • Comparing cards
    • Decks
    • Printing the deck
    • Add, remove, shuffle and sort
    • Inheritance
    • Class diagrams
    • Debugging
    • Data encapsulation
    • Glossary
    • Exercises
  6. The Goodies
    • Conditional expressions
    • List comprehensions
    • Generator expressions
    • any and all
    • Sets
    • Counters
    • defaultdict
    • Named tuples
    • Gathering keyword args
    • Glossary
    • Exercises
  7. Debugging
    • Syntax errors
    • Runtime errors
    • Semantic errors

LecturesCMC/PythonIntro2018 (last edited 2019-01-15 09:47:35 by FrBrGeorge)