Python Fundamentals


  • “Basic data types in Python include integers, strings, and floating-point numbers.”
  • “Use variable = value to assign a value to a variable in order to record it in memory.”
  • “Variables are created on demand whenever a value is assigned to them.”
  • “Use print(something) to display the value of something.”
  • “F-strings can be used to display variables without ending quotes using the syntax print(f'some text {variable}')
  • “Built-in functions are always available to use.”

Analyzing some wave-height data


  • “Import a library into a program using import libraryname.”
  • “Use the numpy library to work with arrays in Python.”
  • “The expression array.shape gives the shape of an array.”
  • “Use array[x, y] to select a single element from a 2D array.”
  • “Array indices start at 0, not 1.”
  • “Use low:high to specify a slice that includes the indices from low to high-1.”
  • “Use # some kind of explanation to add comments to programs.”
  • “Use numpy.mean(array), numpy.max(array), and numpy.min(array) to calculate simple statistics.”
  • “Use numpy.mean(array, axis=0) or numpy.mean(array, axis=1) to calculate statistics across the specified axis.”

Visualizing Tabular Data


  • “Use the pyplot module from the matplotlib library for creating simple visualizations.”

Storing Multiple Values in Lists


  • [value1, value2, value3, ...] creates a list.”
  • “Lists can contain any Python object, including lists (i.e., list of lists).”
  • “Lists are indexed and sliced with square brackets (e.g., list[0] and list[2:9]), in the same way as strings and arrays.”
  • “Lists are mutable (i.e., their values can be changed in place).”
  • “Strings are immutable (i.e., the characters in them cannot be changed).”

Repeating Actions with Loops


  • “Use for variable in sequence to process the elements of a sequence one at a time.”
  • “The body of a for loop must be indented.”
  • “Use len(thing) to determine the length of something that contains other values.”

Analyzing Data from Multiple Files


  • “Use glob.glob(pattern) to create a list of files whose names match a pattern.”
  • “Use * in a pattern to match zero or more characters, and ? to match any single character.”

Making Choices


  • “Use if condition to start a conditional statement, elif condition to provide additional tests, and else to provide a default.”
  • “The bodies of the branches of conditional statements must be indented.”
  • “Use == to test for equality.”
  • X and Y is only true if both X and Y are true.”
  • X or Y is true if either X or Y, or both, are true.”
  • “Zero, the empty string, and the empty list are considered false; all other numbers, strings, and lists are considered true.”
  • True and False represent truth values.”

Creating Functions


  • “Define a function using def function_name(parameter).”
  • “The body of a function must be indented.”
  • “Call a function using function_name(value).”
  • “Numbers are stored as integers or floating-point numbers.”
  • “Variables defined within a function can only be seen and used within the body of the function.”
  • “Variables created outside of any function are called global variables.”
  • “Within a function, we can access global variables.”
  • “Variables created within a function override global variables if their names match.”
  • “Use help(thing) to view help for something.”
  • “Put docstrings in functions to provide help for that function.”
  • “Specify default values for parameters when defining a function using name=value in the parameter list.”
  • “Parameters can be passed by matching based on name, by position, or by omitting them (in which case the default value is used).”
  • “Put code whose parameters change frequently in a function, then call it with different parameter values to customize its behavior.”