1 of 57 gis 4107 – week 2. 2 of 57 flow revisited optimal balance between challenge and skill...
TRANSCRIPT
![Page 1: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/1.jpg)
1 of 57
GIS 4107 – Week 2
![Page 2: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/2.jpg)
2 of 57
Flow revisited
Optimal balance between challenge and skill
Anxiety Arousal Flow
Worry Control
Apathy BoredomRelaxatio
n
Low High
High
Skill
Challenge
![Page 3: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/3.jpg)
3 of 57
Examples of Flow
Click on above image and wait for TED to load.Mouse over progress bar and then click on Compositionwhere she discusses the act of composition and flow.Then sit back and listen to the Improvisation segment.
Click on above image to go to this video.
![Page 4: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/4.jpg)
4 of 57
Talks on flow and creativity …
One of the best talks I have ever seen!
Relatively academic talk on the concept of flow and its relationshipto creativity and fulfillment.
![Page 5: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/5.jpg)
5 of 57
Flow
Csíkszentmihályi identifies the following as accompanying an experience of flow:
Clear goals (expectations and rules are discernible and goals are attainable and align appropriately with one's skill set and abilities). Concentrating and focusing, a high degree of concentration on a limited field of attention (a person engaged in the activity will have the opportunity to focus and to delve deeply into it). A loss of the feeling of self-consciousness, the merging of action and awareness. Distorted sense of time, one's subjective experience of time is altered. Direct and immediate feedback (successes and failures in the course of the activity are apparent, so that behavior can be adjusted as needed). Balance between ability level and challenge (the activity is neither too easy nor too difficult). A sense of personal control over the situation or activity. The activity is intrinsically rewarding, so there is an effortlessness of action. People become absorbed in their activity, and focus of awareness is narrowed down to the activity itself, action awareness merging
I highly recommend Csíkszentmihályi’s books “Creativity” & “Flow”
![Page 6: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/6.jpg)
6 of 57
Overview
Intro to …Computer hardware & softwareLow- and High-level languagesPython on Windows (install and use)Finding helpPython IDE’s (esp. PyScripter)
Intro to Python Programs & their partsExpressions, Operators, StatementsVariables (naming, assigning values, finding type)Core Python Types (esp. Numbers & Strings)Comments and line continuation
![Page 7: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/7.jpg)
7 of 57
Computer hardware
1. Input (keyboard, mouse, microphone, network, camera, etc.)
2. Output (screens, printers, network, etc)3. Primary Memory (RAM)
Fast read/write memoryStorage for OS, Applications, and dataData lost with power loss
4. Secondary Memory (Disks)Slow relative to primary memoryStorage for applications and data filesData persists with power loss
5. ALU (Arithmetic and Logic Unit)Perform calculations
6. CPU (Central Processing Unit)Manages operations between units
![Page 8: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/8.jpg)
8 of 57
Computer software
Everything that runs on a computer (even the boot sequence) is software written directly/indirectly by humans but computers do not understand human.System software
OS, System apps and services, etc
Application softwareWord processing, graphics, etc
Computers understand their own machine language; a system of instructions and data directly executed by a computer's central processing unit (CPU).
Computer program = Set of instructions a computer follows to perform a task = Software
![Page 9: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/9.jpg)
9 of 57
In computers: binary, everything, binary …
0’s and 1’s are the only thing acomputer can deal withHOWEVER, 0’s and 1’s can becombined into groups(e.g. 1 byte = 8 - 0’s & 1’s = 8 bits)Bytes and groups of bytes can be used to represent
Data Numbers, text, images, etc.
OperationsMath (+, -, *, /, etc), File I/O, CPU instructions, etc.Messages between devices (keyboard, mouse, web-cam, etc)
Decimal to binary conversion tool
![Page 10: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/10.jpg)
10 of 57
ASCII
ASCII - The American Standard Code for Information Interchange is a standard seven-bit code that was proposed by ANSI in 1963, and finalized in 1968.
![Page 11: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/11.jpg)
11 of 57
In 1968, ANSI did not think of this …
![Page 12: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/12.jpg)
12 of 57
Unicode
http://www.unicode.org/standard/WhatIsUnicode.html
http://www.unicode.org/Public/UNIDATA/UnicodeData.txt
Hex-to-decimal converter
![Page 13: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/13.jpg)
13 of 57
Pentium Instruction Set (x86 family)
From http://www.intel.com/design/pentium/manuals/24319101.pdf
Machine language is a bunch of 1’s and 0’s in specific patterns that a CPU understands.
![Page 14: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/14.jpg)
14 of 57
Low-level languages
Assembly is an example of a low-level language (close to machine language)
![Page 15: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/15.jpg)
15 of 57
High-level languages
High-level (English-like) computer programming languages can be used to create sophisticated computer applications and services.
NOTE: Not all high-level languages are converted to machine languageusing a compiler. Some use interpreters.
![Page 16: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/16.jpg)
16 of 57
Python (high-level lang) code and execution
Python.exe (and supporting files) handles interpretation of .py files or interactive commands into byte code (platform independent code) and statement-by-statement compilation in the Python Virtual Machine (runtime)
Python Interpreter
If not import’ed,bytecode is inmemory only
(i.e. no .pyc created)
![Page 17: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/17.jpg)
17 of 57
High-level Programming Languages
C-based• C (1972)• AWK (1977)• C++ (1983)• Perl (1987)• PHP (1995)• Java (1995)• JavaScript (1995)• C# (2000)• ASP.Net – C# (2002)
BASIC-based• Beginners All-purpose
Symbolic Instruction Code (BASIC) (mid-1960’s)
• Visual Basic 1 to 5 (1991 - 1998)
• Visual Basic 6 (VB6) (1998)
• Visual Basic for Applications (VBA) (1996 – 2007)
• VBScript (vbs) (1996)
• ActiveX Server Pages (ASP)
• VB.Net (2000)
• ASP.Net – VB (2002)
Non-C/BASIC-based languages includePython, Smalltalk, Eiffel, FORTRAN, COBOL, Pascal, etc.
![Page 18: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/18.jpg)
18 of 57
C vs VB vs Python
![Page 19: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/19.jpg)
19 of 57
Fundamental programming questions
How do you …Install/configure the development environment?Write code (syntax) and what are the code containers?Compile & run the code?Test and debug the code?Manage code (backups, versions, etc.)?Deploy application to users?
Where do you go for help?
![Page 20: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/20.jpg)
20 of 57
How do I install Python?
Usually installed with ArcGIS Python 2.4 with ArcGIS 9.2, 2.5 with 9.3, 2.6 with 10.0, 2.7 with 10.1
Download and run MSI from http://www.python.org
Python 2.x andPython 3.x are twodifferent developmentpaths of the languagee.g.
![Page 21: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/21.jpg)
21 of 57
Post-install configuration
Environment variablesMy Computer – Properties – Advanced tab – Environment variables (System variables panel)
PATH – need to add path to python.exe
PYTHONPATH – module search path (for imports) (optional)
PYTHONSTARTUP – path to interactive startup file (optional)
![Page 22: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/22.jpg)
22 of 57
How do I write and run Python code?
1. Interactively (if Python folder is in PATH)
2. Script from command-line
This works because .pyis associated with Python.exe
![Page 23: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/23.jpg)
23 of 57
How do I write and run Python code?
3. Script by double-clicking .py file in Explorer
The raw_input() function waits for input from keyboard
(e.g. pressing enter)
![Page 24: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/24.jpg)
24 of 57
How do I write and run Python code?
• Run script using IDE buttons or keyboard shortcuts• Interactively in Python Interpreter window
![Page 25: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/25.jpg)
25 of 57
.py files and Python.exe
How does computer know .py files should be run using Python.exe?
In Explorer, Tools menu > Folder options > File types tab
![Page 26: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/26.jpg)
26 of 57
Where do I go to learn more?
Python mother shiphttp://www.python.org
Any book by Mark Lutz (e.g. Learning Python, 3rd ed)
Google with “python” and some other keyword
![Page 27: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/27.jpg)
27 of 57
Docs, help() and dir()
Docs: • http://www.python.org/doc • ActivePython27.chm
![Page 28: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/28.jpg)
28 of 57
Integrated Development Environment – IDE
IDLE is a Python IDE that comes bundled with the Python installation (cross-platform)
PythonWin (part of ActivePython) is a Windows-only IDE
From http://www.activestate.com
PyScripter is the Python IDE we will use in this course
From http://code.google.com/p/pyscripter/ Source code available using Subversion client from http://pyscripter.googlecode.com/svn/trunk/
![Page 29: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/29.jpg)
29 of 57
IDLE
![Page 30: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/30.jpg)
30 of 57
PythonWin
Shortcuts:Alt + I = word completion (intellisense)Ctrl + A = select all text in windowCtrl + A then Delete = clear windowCtrl + Up arrow = previous commandCtrl + Down arrow = next command
![Page 31: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/31.jpg)
31 of 57
PyScripter
![Page 32: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/32.jpg)
32 of 57
Installing PyScripter from EXE
![Page 33: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/33.jpg)
33 of 57
Overview
Intro to …Computer hardware & softwareLow- and High-level languagesPython on Windows (install and use)Finding helpPython IDE’s (esp. PyScripter)
Intro to Python Programs & their partsExpressions, Operators, StatementsVariables (naming, assigning values, finding type)Core Python Types (esp. Numbers & Strings)Comments and line continuation
![Page 34: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/34.jpg)
34 of 57
Python Programs & their parts …
Python programs are usually composed of Modules (.py files)Modules are composed of statementsStatements contain one or more expressionsExpressions create and process objects
![Page 35: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/35.jpg)
35 of 57
Expressions and statements
Expressions are valid combination of one or more …
Variable names – e.g. recordCount, x, fileName, etc.
Python keywords – e.g. print, input, raw_input, exit, etc.
Operators - e.g. +, -, *, /, etc. Operands to the left and right
Literals - e.g. 2, “Spam”, etc.
Delimiters - e.g. (" , . : ')
Expressions can beArithmetic (output is a number)
Boolean (output is True or false)
A function call
etc.
![Page 36: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/36.jpg)
36 of 57
Language Keywords
All programming languages have keywords that are “reserved” (can’t be used for other purposes) and are the for all coding
![Page 37: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/37.jpg)
37 of 57
Expression List and Statements
An expression on one line is a statement
More than one expression separated by commas is an expression list
![Page 38: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/38.jpg)
38 of 57
Variable = Name associated with a value/object
Objects are created and names are associated with them. In this example, the 1 has two names associated with it.
Names are case sensitive
![Page 39: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/39.jpg)
39 of 57
Rules for variable naming
Variable name syntax:_ or letter + any number of letters, digits, or _i.e. cannot begin with a number
Use names that describe the data they are associated with
e.g. “recordCount” is better than “n”
Use lowercase letter for first character, upper case letter for other words in name. This is called Camel Case.
![Page 40: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/40.jpg)
40 of 57
Variables and assignments
Assignments create variables that are associated with values/objects
The following statement creates an integer in memory and associates it with the name x x = 1
Variables are created when they are first assigned
Variable names are not declared like C# with type int x;
Variables must be assigned before they are used
![Page 41: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/41.jpg)
41 of 57
PEMDAS / BEMDAS
Operator precidenceParentheses/BracketsExponentiation Muliplication – DivisionAddition - Subtraction
![Page 42: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/42.jpg)
42 of 57
dir() and del
The dir() function will display a list of all currently accessible modules and variables
The del command will delete the named variables
![Page 43: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/43.jpg)
43 of 57
Determine an variables type with type()
![Page 44: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/44.jpg)
44 of 57
Core object types
![Page 45: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/45.jpg)
45 of 57
Core object types: Numbers
A category of similar object typesIntegers (1234)Long integers (unlimited size!)Floating point (123.4)Octal (0177) & Hex (0XFF)Complex (3.0+4j)
![Page 46: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/46.jpg)
46 of 57
Numbers: Standard operations
![Page 47: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/47.jpg)
47 of 57
Numbers: Up conversion
Python converts operands up to type of most complicated operand before performing math on same-type operandsWith float data types, the least significant bits can cause small “errors”
![Page 48: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/48.jpg)
48 of 57
Numbers: Getting remainder of division
Finding whether or not a number is a factor of another numberUseful for finding whether or not a number is even(e.g. 4 % 2 = 0, 3 % 2 = 1)Use the modulo operator (%)
641
-42
![Page 49: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/49.jpg)
49 of 57
Core object types: Strings
Strings=ordered collections (sequence) of charactersCan be enclosed by single or double quotes
len() built-in for getting length of strings
Many built-in string methods …
![Page 50: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/50.jpg)
50 of 57
Escape sequences and raw
Backslash with one or more characters to support special byte codings
\n = newline\t = horizontal tab\\ = backslash\xhh = hex (e.g. \xFF = 255)
r = raw = …
Extended ascii table …
![Page 51: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/51.jpg)
51 of 57
Multiline block strings """ …. """
Triple double- or single-quotes multiline stringsThe \n is inserted automatically
![Page 52: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/52.jpg)
52 of 57
Concatenation, repetition, “in”
![Page 53: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/53.jpg)
53 of 57
Dynamic typing and operator polymorphism
Expressions determine the initial type of object and this can be changed dynamically (dynamically typed)Objects support calls to methods supported by that objectOperators (e.g. +, *) are polymorphic
i.e. Behaviour depends on object types on either side
Note: In interactive mode, statement output is echoed to the screen. In file mode (run from Command tool or in IDE), statement output is not displayed without print.
![Page 54: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/54.jpg)
54 of 57
Built-in operators and functions
Expression operators: +, -, *, /, **, >>, etc.Built-in functions: str(), abs(), etc.Type conversions: int(), float(), long(), str(), etc.Utility modules: math, random, NumPy, etc.Logical operators: ==, !=, <, <=, or, and, not, etc.
![Page 55: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/55.jpg)
55 of 57
Line continuation
![Page 56: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/56.jpg)
56 of 57
Comments
“The best kind of comments are the ones you don't need. Allow me to clarify that point. You should first strive to make your code as simple as possible to understand without relying on comments as a crutch. Only at the point where the code cannot be made easier to understand
should you begin to add comments.” From http://www.codinghorror.com/blog/archives/000749.html
Use # for single line or """ """ for multi-line comments.
![Page 57: 1 of 57 GIS 4107 – Week 2. 2 of 57 Flow revisited Optimal balance between challenge and skill AnxietyArousalFlow WorryControl ApathyBoredomRelaxation](https://reader036.vdocuments.mx/reader036/viewer/2022062321/56649e025503460f94aebff7/html5/thumbnails/57.jpg)
57 of 57
We’re done