Difference between revisions of "EGR 103/Concept List Spring 2020"

From PrattWiki
Jump to navigation Jump to search
(Created page with "== Lecture 1 - Introduction == * Class web page: [http://classes.pratt.duke.edu/EGR103S20/ EGR 103L]; assignments, contact info, readings, etc - see slides on Errata/Notes pag...")
 
(Lecture 3 - "Number" Types)
Line 23: Line 23:
 
** Focus later: dictionary, set
 
** Focus later: dictionary, set
 
* int: integers; Python can store these perfectly
 
* int: integers; Python can store these perfectly
* float: floating point numbers - "numbers with decimal points" - Python sometimes has problems
+
* float: floating point numbers - "numbers with decimal points" - Python sometimes has problems storing floating point items exactly
 
* array
 
* array
 
** Requires numpy, usually with <code>import numpy as np</code>
 
** Requires numpy, usually with <code>import numpy as np</code>

Revision as of 20:05, 13 January 2020

Lecture 1 - Introduction

  • Class web page: EGR 103L; assignments, contact info, readings, etc - see slides on Errata/Notes page
  • Sakai page: Sakai 103L page; grades, surveys and tests, some assignment submissions
  • CampusWire page: CampusWire 103L page; message board for questions - you need to be in the class and have the access code 6393 to subscribe.

Lecture 2 - Programs and Programming


Lecture 3 - "Number" Types

  • To play with Python:
    • Install it on your machine or a public machine: Download
  • Quick tour of Python
    • Editing window, variable explorer, and console
    • Run icon (F5)
  • You are not expected to remember any of the specifics about how Python stores things or works with them yet!
  • Python is a "typed" language - variables have types
  • We will use eight types:
    • Focus of the day: int, float, and array
    • Basics today, focus a little later: string, list, tuple
    • Focus later: dictionary, set
  • int: integers; Python can store these perfectly
  • float: floating point numbers - "numbers with decimal points" - Python sometimes has problems storing floating point items exactly
  • array
    • Requires numpy, usually with import numpy as np
    • Organizational unit for storing rectangular arrays of numbers
  • Math with "Number" types works the way you expect
    • ** * / // % + -
  • Slices allow us to extract information from a collection or change information in mutable collections
  • a[0] is the element in a at the start
  • a[3] is the element in a three away from the start
  • a[-1] is the last element of a
  • A string contains an immutable collection of characters
    • Using + with strings concatenates strings
    • Using * with strings makes a string with the original repeated
  • A tuple contains an immutable collection of other types
    • Using + with tuples concatenates tuples
    • Using * with tuples makes a tuple with the original repeated
  • A list contains an immutable collection of other types
    • Using + with lists concatenates lists
    • Using * with lists makes a list with the original repeated

Lecture 4 - More on Types

  • Relational operators can compare "Number" Types and work the way you expect with True or False as an answer
    • < <= == >= > !=
    • With arrays, either same size or one is a single value; result will be an array of True and False the same size as the array
  • More advanced slices:
  • a[:] is all the elements in a because what is really happening is:
    • a[start:until] where start is the first index and until is just *past* the last index;
    • a[3:7] will return a[3] through a[6] in 4-element array
    • a[start:until:increment] will skip indices by increment instead of 1
    • To go backwards, a[start:until:-increment] will start at an index and then go backwards until getting at or just past until.
  • For 2-D arrays, you can index items with either separate row and column indices or indices separated by commas:
    • a[2][3] is the same as a[2, 3]
    • Only works for arrays!