Lessons on Python Functions
|
|
- Diane Anderson
- 5 years ago
- Views:
Transcription
1 Lessons on Python Functions Walter Didimo [ 90 minutes ]
2 Functions When you write a program, you may need to recall a certain block of instructions several times throughout your code A function is a block of instructions grouped together in a unique name you can use this name to recall such a block
3 How to define a function General syntax of a function name of the function input taken by the function def <func_name>(<parameters>): <docstring> <instructions> string that describes the function body of the function
4 Example Function that prints all even integers in a given interval def printevennumbersbetween(a,b): """Print all even integer numbers in the specified interval [a,b]: PRE: b > a""" if a%2 == 0: start = a else: start = a+1 for i in range(start,b+1,2): print(i)
5 Docstring The description used in the <docstring> part is a comment between triple quotes, called the docstring of the function It is a property of the function, which can be accessed with the following syntax <func_name>. doc >>> print(printevennumbersbetween. doc ) Print all even integer numbers in the specified interval [a,b]: PRE: b >= a
6 Variables in a function Variables that receive a value within a function, are treated as local variables a = 10 def f1 (): a = 5 f1() print(a) 10 Calling f1 does not change the value of a at the top level; the variable a inside f1 is a different one
7 Variables in a function: global However, the global statement can be used within a function to refer to an external global variable a = 10 def f1 (): f1() global a a = 5 print(a) 5 This time the value of the global variable a will be modified by f1
8 Variables in a function: global You can define a global variable inside a function even if such a function is not explicitly defined outside; in this case the same variable can be used in other functions of the same module (see later), still using the prefix global def f1 (): global a a = 5 def f2 (): global a print(a) f1(); f2() 5
9 The return statement The return statement can be used to interrupt a function and to return a value def intnumbers(n): """Return all integers in [0,n]""" nums = [] for i in range(n+1): nums.append(i) return nums >>> print(intnumbers(10)) [0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
10 The None value If a function does not contain a return statement, it implicitly returns the built-in None value def printintnumbers(n): """Print all integers in [0,n]""" for i in range(n+1): print(i,end="-") >>> print(printintnumbers(10)) None
11 Function parameters The parameters of a function are used to pass values to it when the function is called The actual parameters passed to a function are called arguments All arguments are passed by value each argument is just copied into its corresponding parameter When you pass an object to a function, you are in fact passing a reference to that object not a copy of the object
12 Function parameters example def mergelists(l1,l2): """Return a list that merges l1 and l2""" merged = [] for i in l1: merged.append(i) for i in l2: merged.append(i) return merged >>> l1, l2 = [1,2,3], [4,5,6] >>> print(mergelists(l1,l2)) [1,2,3,4,5,6]
13 Function parameters example def merge(l1,l2): """Merge l2 with l1: l1 is modified""" for i in l2: l1.append(i) return l1 >>> l1, l2 = [1,2,3], [4,5,6] >>> print(merge(l1,l2)) [1,2,3,4,5,6] >>> print(merge(l1,l2)) [1,2,3,4,5,6,4,5,6]
14 Checking arguments In Python you can only specify the name of a function parameter, but not its type This may lead to an execution error when your function expects a specific type of parameter but receives a different one In the function's body you can check the type of an argument using the type() function you can even write a function that accepts different types of arguments for a certain parameter and that differentiates its behavior depending on the parameter type
15 Checking arguments - example The following method joins (i.e., concatenate) strings and/or numbers def join(e1,e2): if (type(e1) == type(0)): #e1 is a number e1 = str(e1) if (type(e2) == type(0)): #e2 is a number e2 = str(e2) if (type(e1)!=type("") or type(e2)!=type("")): print("invalid parameters") e = None else: e = e1 + e2 return e
16 Variable number of arguments You can also define functions that can be called with a variable number of arguments We explain the following concepts: default arguments keyword arguments arbitrary argument sets
17 Default arguments When you define a function, you can assign a default argument to some parameters: a default argument is used if and only if no other value is specified for its parameter when the function is called def decimaldigits(num,d=2): """Return a string representation of num, rounded to d decimal digits""" decdig = "%."+str(d)+"f" rounded = decdig % num return rounded
18 Default arguments example 1 def decdigits(num,d=2): """Return a string representation of num, rounded to d decimal digits""" decdig = "%."+str(d)+"f" rounded = decdig % num return rounded >>> decdigits( ) >>> decdigits( ,3)
19 Default arguments example 2 def decdigitsandnotation(num,d=2,n='f'): """Return a string representation of num, rounded to d decimal digits and using the n notation""" decdig = "%."+str(d)+n rounded = decdig % num return rounded >>> decdigitsandnotation( ) >>> decdigitsandnotation( ,2,'e') '3.06E+01'
20 Default arguments warning! Warning: a default argument is evaluated only once! This may lead to unexpected behaviors when the default argument is a mutable object (e.g., a list or a dictionary, or some other class instance) def addtolist(num,lis=[]): """append num to lis""" lis.append(num) return lis >>> addtolist(1); addtolist(2); addtolist(3) [1] [1, 2] [1, 2, 3]
21 Keyword arguments So far we have specified the arguments of a function only according to a positional criterion It is also possible to specify an argument through a keyword, i.e., using the symbolic name of its parameter Keyword arguments can be specified in any order, but all of them must occur after the positional arguments
22 Keyword arguments example def decdigitsandnotation(num,d=2,n='f'): """Return a string representation of num, rounded to d decimal digits and using the n notation""" decdig = "%."+str(d)+n rounded = decdig % num return rounded >>> decdigitsandnotation( , n='e') >>> decdigitsandnotation( , n='e', d='3') >>> decdigitsandnotation(n='e', num= , d='3') >>> decdigitsandnotation(n='e', ) invalid call valid calls
23 Arbitrary argument sets Python also supports parameters that can have an arbitrary number of arguments *args: accepts an arbitrary number of arguments, which will be wrapped into a tuple **keyargs: accepts an arbitrary number of keyword arguments, which will be wrapped into a dictionary A **keyargs parameter must follow a *args parameter, and both of them must follow any other type of parameter
24 Arbitrary argument sets - example def createdict(mess, *listelem, **dicelem): print(mess) for m in listelem: print(m) for i in dicelem: print(i,'-->',dicelem[i]) return dicelem >>> print(createdict("my dictionary", "Syntax:", "keyword --> value", one='1', two='2', three='3'))
25 Arbitrary argument sets - example >>> print(createdict("my dictionary", "Syntax:", "keyword --> value", one='1', two='2', three='3')) My dictionary Syntax: Keyword --> value one --> 1 two --> 2 three --> 3 {'one': '1', 'two': '2', 'three': '3'}
26 Unpacking argument lists When you invoke a function and you need to pass to it all the elements of a tuple or of a list in an unpacked form, use the * operator >>> print(*[10,20,30])
27 Copying function names It is possible to copy the name of a function into another name: in this case, both the two names can be used to invoke the function For instance, the built-in functions min() returns the minimum value of an iterable object; the next code defines an alternative name for this function. >>> minimum = min >>> minimum([10,20,-1,-2,30,0]) -2
28 Lambda expressions A lambda expression can be used to define a small anonymous (without name) function list of parameters returned value lambda <parameters>: expression The parameters are separated by commas, as usual expression must be a simple expression, without other types of instructions
29 Lambda expressions - examples >>> g = lambda x,y,z: x+y+z >>> g(10,20,30) 60 >>> f = lambda m: 2*m >>> f(g(10,20,30)) 120
30 Lambda expressions - examples Anonymous functions can also be used as a return value of another function (i.e., a function returns another function) >>> def f(n): return lambda m: n+m >>> g = f(10) >>> g(20) 30 or equivalently >>> f(10)(20) 30
31 Lambda expressions - examples A lambda expression can also be the attribute of another function; the following functions allows you to execute any function f on a parameter n >>> def myfunc(f,n): return f(n) >>> myfunc(lambda x:x**2,100) >>> 10000
32 Lambda expressions - examples Another example >>> lis = [(1,2,3), (2,1,4), (3,3,0)] >>> lis.sort(key=lambda triple: triple[2]) >>> lis [(3, 3, 0), (1, 2, 3), (2, 1, 4)] We now see two useful built-in functions, which can take as input lambda functions
33 The filter() function filter(function,iterable) returns a new iterable object (filter) that represents the subset of the elements in the iterable object for which function returns True For instance, the following code filters the elements that correspond to even numbers >>> L = [10,25,4,6,57] >>> even = list(filter(lambda x: x%2==0,l)) >>> even [10,4,6]
34 The map() function map(function,iterable) returns a new iterable object (map) obtained by applying function to all elements of iterable For instance, the following code can be used to get a list of squared elements from an initial list >>> L = [1,2,3,4,5] >>> squares = list(map(lambda x: x**2,l)) >>> squares [1, 4, 9, 16, 25]
35 The map() function This is another example, which shows you the power of this language: L is a list of functions the parameter of the lambda function in the map function is a function itself! >>> double = lambda x: x*x >>> triple = lambda x: pow(x,3) >>> L = [double, triple] >>> for n in range(1,4): >>> print(list(map(lambda f: f(n),l))) [1, 1] [4, 8] [9, 27]
36 Recursive functions Recursion is an important technique that reflects mathematical induction A recursive function is a function that calls itself Example: The following recursive function computes the sum of the first n integer numbers, where n is a nonnegative integer 0 if n = 0 base case sum(n) = n + sum(n-1) if n > 0 inductive case sum(3) = 3 + sum(2) = sum(1) = sum(0) = = 6
37 Recursive functions - example This is an implementation of the sum() recursive function def sum(n): """ Recursively compute the sum of the integer numbers in the interval [0,n]""" s = -1 #initially not defined if n==0: s = 0 elif n>0: s = n + sum(n-1) else: # n is negative return s print("error: n cannot be negative!")
GE PROBLEM SOVING AND PYTHON PROGRAMMING. Question Bank UNIT 1 - ALGORITHMIC PROBLEM SOLVING
GE8151 - PROBLEM SOVING AND PYTHON PROGRAMMING Question Bank UNIT 1 - ALGORITHMIC PROBLEM SOLVING 1) Define Computer 2) Define algorithm 3) What are the two phases in algorithmic problem solving? 4) Why
More informationModule 04: Lists. Topics: Lists and their methods Mutating lists Abstract list functions Readings: ThinkP 8, 10. CS116 Fall : Lists
Module 04: Lists Topics: Lists and their methods Mutating lists Abstract list functions Readings: ThinkP 8, 10 1 Consider the string method split >>> name = "Harry James Potter" >>> name.split() ['Harry',
More informationProgramming with Python
Programming with Python Lecture 3: Python Functions IPEC Winter School 2015 B-IT Dr. Tiansi Dong & Dr. Joachim Köhler Python Functions arguments return obj Global vars Files/streams Function Global vars
More informationBabu Madhav Institute of Information Technology, UTU 2015
Five years Integrated M.Sc.(IT)(Semester 5) Question Bank 060010502:Programming in Python Unit-1:Introduction To Python Q-1 Answer the following Questions in short. 1. Which operator is used for slicing?
More informationlambda forms map(), reduce(), filter(), eval(), and apply() estimating π with list comprehensions
Outline 1 Guessing Secrets functions returning functions oracles and trapdoor functions 2 anonymous functions lambda forms map(), reduce(), filter(), eval(), and apply() estimating π with list comprehensions
More informationPython review. 1 Python basics. References. CS 234 Naomi Nishimura
Python review CS 234 Naomi Nishimura The sections below indicate Python material, the degree to which it will be used in the course, and various resources you can use to review the material. You are not
More informationThere are four numeric types: 1. Integers, represented as a 32 bit (or longer) quantity. Digits sequences (possibly) signed are integer literals:
Numeric Types There are four numeric types: 1. Integers, represented as a 32 bit (or longer) quantity. Digits sequences (possibly) signed are integer literals: 1-123 +456 2. Long integers, of unlimited
More informationRecursion defining an object (or function, algorithm, etc.) in terms of itself. Recursion can be used to define sequences
Section 5.3 1 Recursion Recursion defining an object (or function, algorithm, etc.) in terms of itself. Recursion can be used to define sequences Previously sequences were defined using a specific formula,
More informationExam 1 Format, Concepts, What you should be able to do, and Sample Problems
CSSE 120 Introduction to Software Development Exam 1 Format, Concepts, What you should be able to do, and Sample Problems Page 1 of 6 Format: The exam will have two sections: Part 1: Paper-and-Pencil o
More information\n is used in a string to indicate the newline character. An expression produces data. The simplest expression
Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of
More informationPython in 10 (50) minutes
Python in 10 (50) minutes https://www.stavros.io/tutorials/python/ Python for Microcontrollers Getting started with MicroPython Donald Norris, McGrawHill (2017) Python is strongly typed (i.e. types are
More informationChapter 1 Summary. Chapter 2 Summary. end of a string, in which case the string can span multiple lines.
Chapter 1 Summary Comments are indicated by a hash sign # (also known as the pound or number sign). Text to the right of the hash sign is ignored. (But, hash loses its special meaning if it is part of
More informationDownloaded from Chapter 2. Functions
Chapter 2 Functions After studying this lesson, students will be able to: Understand and apply the concept of module programming Write functions Identify and invoke appropriate predefined functions Create
More informationpython 01 September 16, 2016
python 01 September 16, 2016 1 Introduction to Python adapted from Steve Phelps lectures - (http://sphelps.net) 2 Python is interpreted Python is an interpreted language (Java and C are not). In [1]: 7
More informationStatements 2. a operator= b a = a operator b
Statements 2 Outline Note: i=i+1 is a valid statement. Don t confuse it with an equation i==i+1 which is always false for normal numbers. The statement i=i+1 is a very common idiom: it just increments
More informationENGR 102 Engineering Lab I - Computation
ENGR 102 Engineering Lab I - Computation Learning Objectives by Week 1 ENGR 102 Engineering Lab I Computation 2 Credits 2. Introduction to the design and development of computer applications for engineers;
More informationHere n is a variable name. The value of that variable is 176.
UNIT II DATA, EXPRESSIONS, STATEMENTS 9 Python interpreter and interactive mode; values and types: int, float, boolean, string, and list; variables, expressions, statements, tuple assignment, precedence
More informationCS 61A Interpreters, Tail Calls, Macros, Streams, Iterators. Spring 2019 Guerrilla Section 5: April 20, Interpreters.
CS 61A Spring 2019 Guerrilla Section 5: April 20, 2019 1 Interpreters 1.1 Determine the number of calls to scheme eval and the number of calls to scheme apply for the following expressions. > (+ 1 2) 3
More informationTeaching London Computing
Teaching London Computing A Level Computer Science Topic 3: Advanced Programming in Python William Marsh School of Electronic Engineering and Computer Science Queen Mary University of London Aims Further
More informationLists How lists are like strings
Lists How lists are like strings A Python list is a new type. Lists allow many of the same operations as strings. (See the table in Section 4.6 of the Python Standard Library Reference for operations supported
More informationSequence types. str and bytes are sequence types Sequence types have several operations defined for them. Sequence Types. Python
Python Sequence Types Sequence types str and bytes are sequence types Sequence types have several operations defined for them Indexing Python Sequence Types Each element in a sequence can be extracted
More informationPython I. Some material adapted from Upenn cmpe391 slides and other sources
Python I Some material adapted from Upenn cmpe391 slides and other sources Overview Names & Assignment Data types Sequences types: Lists, Tuples, and Strings Mutability Understanding Reference Semantics
More informationFirst cut, scope. Defining scope. Find the namespace. Passing argument to parameter. A function s namespace 6/13/2017. chapter 8.
chapter 8 First cut, scope More On Functions Defining scope The set of program statements over which a variable exists, i.e., can be referred to it is about understanding, for any variable, what its associated
More informationPYTHON CONTENT NOTE: Almost every task is explained with an example
PYTHON CONTENT NOTE: Almost every task is explained with an example Introduction: 1. What is a script and program? 2. Difference between scripting and programming languages? 3. What is Python? 4. Characteristics
More informationPython Intro GIS Week 1. Jake K. Carr
GIS 5222 Week 1 Why Python It s simple and easy to learn It s free - open source! It s cross platform IT S expandable!! Why Python: Example Consider having to convert 1,000 shapefiles into feature classes
More informationScheme Tutorial. Introduction. The Structure of Scheme Programs. Syntax
Scheme Tutorial Introduction Scheme is an imperative language with a functional core. The functional core is based on the lambda calculus. In this chapter only the functional core and some simple I/O is
More informationENGR 101 Engineering Design Workshop
ENGR 101 Engineering Design Workshop Lecture 2: Variables, Statements/Expressions, if-else Edgardo Molina City College of New York Literals, Variables, Data Types, Statements and Expressions Python as
More informationVariable and Data Type I
Islamic University Of Gaza Faculty of Engineering Computer Engineering Department Lab 2 Variable and Data Type I Eng. Ibraheem Lubbad September 24, 2016 Variable is reserved a location in memory to store
More informationLISTS WITH PYTHON. José M. Garrido Department of Computer Science. May College of Computing and Software Engineering Kennesaw State University
LISTS WITH PYTHON José M. Garrido Department of Computer Science May 2015 College of Computing and Software Engineering Kennesaw State University c 2015, J. M. Garrido Lists with Python 2 Lists with Python
More informationPYTHON. Varun Jain & Senior Software Engineer. Pratap, Mysore Narasimha Raju & TEST AUTOMATION ARCHITECT. CenturyLink Technologies India PVT LTD
PYTHON Varun Jain & Senior Software Engineer Pratap, Mysore Narasimha Raju & TEST AUTOMATION ARCHITECT CenturyLink Technologies India PVT LTD 1 About Python Python is a general-purpose interpreted, interactive,
More informationList of squares. Program to generate a list containing squares of n integers starting from 0. list. Example. n = 12
List of squares Program to generate a list containing squares of n integers starting from 0 Example list n = 12 squares = [] for i in range(n): squares.append(i**2) print(squares) $ python3 squares.py
More informationQuestion 1. Part (a) Simple Syntax [1 mark] Circle add_ints(), because it is missing arguments to the function call. Part (b) Simple Syntax [1 mark]
Note to Students: This file contains sample solutions to the term test together with the marking scheme and comments for each question. Please read the solutions and the marking schemes and comments carefully.
More informationFunctions, Scope & Arguments. HORT Lecture 12 Instructor: Kranthi Varala
Functions, Scope & Arguments HORT 59000 Lecture 12 Instructor: Kranthi Varala Functions Functions are logical groupings of statements to achieve a task. For example, a function to calculate the average
More informationFunctional programming with Common Lisp
Functional programming with Common Lisp Dr. C. Constantinides Department of Computer Science and Software Engineering Concordia University Montreal, Canada August 11, 2016 1 / 81 Expressions and functions
More informationIterators & Generators
Iterators & Generators Sequences A sequence is something that you can: Index into Get the length of What are some examples of sequences? Sequences We ve been working with sequences all semester! Examples:
More informationPython and Bioinformatics. Pierre Parutto
Python and Bioinformatics Pierre Parutto October 9, 2016 Contents 1 Common Data Structures 2 1.1 Sequences............................... 2 1.1.1 Manipulating Sequences................... 2 1.1.2 String.............................
More informationLecture no
Advanced Algorithms and Computational Models (module A) Lecture no. 3 29-09-2014 Giacomo Fiumara giacomo.fiumara@unime.it 2014-2015 1 / 28 Expressions, Operators and Precedence Sequence Operators The following
More informationDuration: Six Weeks Faculty : Mr Sai Kumar, Having 10+ Yrs Experience in IT
Duration: Six Weeks Faculty : Mr Sai Kumar, Having 10+ Yrs Experience in IT Online Classes are also available Recorded class will be given if you miss any day interview tips and quiz at end of every module
More informationModule 10: Imperative Programming, Modularization, and The Future
Module 10: Imperative Programming, Modularization, and The Future If you have not already, make sure you Read How to Design Programs Sections 18. 1 CS 115 Module 10: Imperative Programming, Modularization,
More informationTUPLES AND RECURSIVE LISTS 5
TUPLES AND RECURSIVE LISTS 5 COMPUTER SCIENCE 61A July 3, 2012 1 Sequences From the Pig project, we discovered the utility of having structures that contain multiple values. Today, we are going to cover
More informationage = 23 age = age + 1 data types Integers Floating-point numbers Strings Booleans loosely typed age = In my 20s
Intro to Python Python Getting increasingly more common Designed to have intuitive and lightweight syntax In this class, we will be using Python 3.x Python 2.x is still very popular, and the differences
More informationOverview of List Syntax
Lists and Sequences Overview of List Syntax x = [0, 0, 0, 0] Create list of length 4 with all zeroes x 4300112 x.append(2) 3 in x x[2] = 5 x[0] = 4 k = 3 Append 2 to end of list x (now length 5) Evaluates
More informationIntroduction to Python! Lecture 2
.. Introduction to Python Lecture 2 Summary Summary: Lists Sets Tuples Variables while loop for loop Functions Names and values Passing parameters to functions Lists Characteristics of the Python lists
More informationPart III Appendices 165
Part III Appendices 165 Appendix A Technical Instructions Learning Outcomes This material will help you learn how to use the software you need to do your work in this course. You won t be tested on it.
More informationScala : an LLVM-targeted Scala compiler
Scala : an LLVM-targeted Scala compiler Da Liu, UNI: dl2997 Contents 1 Background 1 2 Introduction 1 3 Project Design 1 4 Language Prototype Features 2 4.1 Language Features........................................
More informationVisualize ComplexCities
Introduction to Python Chair of Information Architecture ETH Zürich February 22, 2013 First Steps Python Basics Conditionals Statements Loops User Input Functions Programming? Programming is the interaction
More informationChapter 2. Python Programming for Physicists. Soon-Hyung Yook. March 31, Soon-Hyung Yook Chapter 2 March 31, / 52
Chapter 2 Python Programming for Physicists Soon-Hyung Yook March 31, 2017 Soon-Hyung Yook Chapter 2 March 31, 2017 1 / 52 Table of Contents I 1 Getting Started 2 Basic Programming Variables and Assignments
More informationOnion Language Reference Manual. By: Andrew Aday, (aza2112) Amol Kapoor (ajk2227), Jonathan Zhang (jz2814)
Onion Language Reference Manual By: Andrew Aday, (aza2112) Amol Kapoor (ajk2227), Jonathan Zhang (jz2814) Introduction 3 Types 3 Lexical Conventions 4 Identifiers 4 Keywords 4 Comments 4 Expressions 5
More informationCHAPTER 2: Introduction to Python COMPUTER PROGRAMMING SKILLS
CHAPTER 2: Introduction to Python COMPUTER PROGRAMMING SKILLS 1439-1440 1 Outline 1. Introduction 2. Why Python? 3. Compiler and Interpreter 4. The first program 5. Comments and Docstrings 6. Python Indentations
More informationCPSC 217 Midterm (Python 3 version)
CPSC 217 Midterm (Python 3 version) Duration: 60 minutes 7 March 2011 This exam has 81 questions and 14 pages. This exam is closed book. No notes, books, calculators or electronic devices, or other assistance
More informationRecursive Definitions Structural Induction Recursive Algorithms
Chapter 4 1 4.3-4.4 Recursive Definitions Structural Induction Recursive Algorithms 2 Section 4.1 3 Principle of Mathematical Induction Principle of Mathematical Induction: To prove that P(n) is true for
More informationWorksheet 6: Basic Methods Methods The Format Method Formatting Floats Formatting Different Types Formatting Keywords
Worksheet 1: Introductory Exercises Turtle Programming Calculations The Print Function Comments Syntax Semantics Strings Concatenation Quotation Marks Types Variables Restrictions on Variable Names Long
More informationVariable and Data Type I
The Islamic University of Gaza Faculty of Engineering Dept. of Computer Engineering Intro. To Computers (LNGG 1003) Lab 2 Variable and Data Type I Eng. Ibraheem Lubbad February 18, 2017 Variable is reserved
More informationFunctional Programming. Pure Functional Programming
Functional Programming Pure Functional Programming Computation is largely performed by applying functions to values. The value of an expression depends only on the values of its sub-expressions (if any).
More informationRecursion defining an object (or function, algorithm, etc.) in terms of itself. Recursion can be used to define sequences
Section 5.3 1 Recursion 2 Recursion Recursion defining an object (or function, algorithm, etc.) in terms of itself. Recursion can be used to define sequences Previously sequences were defined using a specific
More informationGIS 4653/5653: Spatial Programming and GIS. More Python: Statements, Types, Functions, Modules, Classes
GIS 4653/5653: Spatial Programming and GIS More Python: Statements, Types, Functions, Modules, Classes Statement Syntax The if-elif-else statement Indentation and and colons are important Parentheses and
More informationSummer 2017 Discussion 10: July 25, Introduction. 2 Primitives and Define
CS 6A Scheme Summer 207 Discussion 0: July 25, 207 Introduction In the next part of the course, we will be working with the Scheme programming language. In addition to learning how to write Scheme programs,
More informationAdvanced Python. Executive Summary, Session 1
Advanced Python Executive Summary, Session 1 OBJECT: a unit of data of a particular type with characteristic functionality (i.e., methods and/or use with operators). Everything in Python is an object.
More informationPython Programming Language
Python Programming Language Data Structure Sachin PVPPCOE December 22, 2015 Data types Basic objects: numbers(float, int, complex), strings, Tuples, lists, sets, & dictionaries Other data types: Modules,
More informationIntro. Scheme Basics. scm> 5 5. scm>
Intro Let s take some time to talk about LISP. It stands for LISt Processing a way of coding using only lists! It sounds pretty radical, and it is. There are lots of cool things to know about LISP; if
More informationSCHEME 8. 1 Introduction. 2 Primitives COMPUTER SCIENCE 61A. March 23, 2017
SCHEME 8 COMPUTER SCIENCE 61A March 2, 2017 1 Introduction In the next part of the course, we will be working with the Scheme programming language. In addition to learning how to write Scheme programs,
More informationLecture #12: Immutable and Mutable Data. Last modified: Mon Feb 22 16:33: CS61A: Lecture #12 1
Lecture #12: Immutable and Mutable Data Last modified: Mon Feb 22 16:33:22 2016 CS61A: Lecture #12 1 Listing Leaves def leaf_labels(tree): """A list of the labels of all leaves in TREE.""" Last modified:
More informationCS Introduction to Computational and Data Science. Instructor: Renzhi Cao Computer Science Department Pacific Lutheran University Spring 2017
CS 133 - Introduction to Computational and Data Science Instructor: Renzhi Cao Computer Science Department Pacific Lutheran University Spring 2017 Introduction to Python II In the previous class, you have
More informationUCT Department of Computer Science Computer Science 1017F. Functions. Lighton Phiri April 2015
UCT Department of Computer Science Computer Science 1017F Functions Lighton Phiri April 2015 Functions in pespective Function definition Function signature Function invocation Input
More informationIntro to Programming. Unit 7. What is Programming? What is Programming? Intro to Programming
Intro to Programming Unit 7 Intro to Programming 1 What is Programming? 1. Programming Languages 2. Markup vs. Programming 1. Introduction 2. Print Statement 3. Strings 4. Types and Values 5. Math Externals
More informationdebugging, hexadecimals, tuples
debugging, hexadecimals, tuples Matt Valeriote 28 January 2019 Searching for/asking for help Searching for help Google (or your search engine of choice) be as specific as possible Asking for help reproducible/minimal
More informationChapter 3 : Informatics Practices. Class XI ( As per CBSE Board) Python Fundamentals. Visit : python.mykvs.in for regular updates
Chapter 3 : Informatics Practices Class XI ( As per CBSE Board) Python Fundamentals Introduction Python 3.0 was released in 2008. Although this version is supposed to be backward incompatibles, later on
More informationCOMP519 Web Programming Lecture 20: Python (Part 4) Handouts
COMP519 Web Programming Lecture 20: Python (Part 4) Handouts Ullrich Hustadt Department of Computer Science School of Electrical Engineering, Electronics, and Computer Science University of Liverpool Contents
More informationPython. Executive Summary
Python Executive Summary DEFINITIONS OBJECT: a unit of data of a particular type with characteristic functionality (i.e., methods and/or response to operators). Everything in Python is an object. "atomic"
More informationChapter 5 Conditional and Iterative Statements (Part-II) To carry out repetitive task, python provides following iterative/looping statements:
Chapter 5 Conditional and Iterative Statements (Part-II) Iterative Statements To carry out repetitive task, python provides following iterative/looping statements: 1. Conditional loop while (condition
More informationScheme Quick Reference
Scheme Quick Reference COSC 18 Fall 2003 This document is a quick reference guide to common features of the Scheme language. It is not intended to be a complete language reference, but it gives terse summaries
More information11/6/17. Functional programming. FP Foundations, Scheme (2) LISP Data Types. LISP Data Types. LISP Data Types. Scheme. LISP: John McCarthy 1958 MIT
Functional programming FP Foundations, Scheme (2 In Text: Chapter 15 LISP: John McCarthy 1958 MIT List Processing => Symbolic Manipulation First functional programming language Every version after the
More information4. Write the output that would be printed from each of the following code fragments. (8pts) x = 9 y = x / 2 print('y ==', y) +1 4.
1. Write an X To the left of each valid Python name (identifier). (4pts) a) X pyhonindetfriar c) X a_b_c_d b) 9to5 d) x*y all or none 2. Write an X To the left of each Python reserved word (keyword). (4pts)
More informationENVIRONMENT DIAGRAMS AND RECURSION 2
ENVIRONMENT DIAGRAMS AND RECURSION 2 COMPUTER SCIENCE 61A February 4, 2016 1 Environment Diagrams An environment diagram keeps track of all the variables that have been defined and the values they are
More informationSequence Types FEB
Sequence Types FEB 23-25 2015 What we have not learned so far How to store, organize, and access large amounts of data? Examples: Read a sequence of million numbers and output these in sorted order. Read
More information(CC)A-NC 2.5 by Randall Munroe Python
http://xkcd.com/353/ (CC)A-NC 2.5 by Randall Munroe Python Python: Operative Keywords Very high level language Language design is focused on readability Mulit-paradigm Mix of OO, imperative, and functional
More informationChapter 6: List. 6.1 Definition. What we will learn: What you need to know before: Data types Assignments
Chapter 6: List What we will learn: List definition Syntax for creating lists Selecting elements of a list Selecting subsequence of a list What you need to know before: Data types Assignments List Sub-list
More informationCIS192 Python Programming
CIS192 Python Programming Functional Programming Robert Rand University of Pennsylvania February 03, 2016 Robert Rand (University of Pennsylvania) CIS 192 February 03, 2016 1 / 23 Outline 1 Function Arguments
More informationLECTURE 2. Python Basics
LECTURE 2 Python Basics MODULES ''' Module fib.py ''' from future import print_function def even_fib(n): total = 0 f1, f2 = 1, 2 while f1 < n: if f1 % 2 == 0: total = total + f1 f1, f2 = f2, f1 + f2 return
More informationInteractive use. $ python. >>> print 'Hello, world!' Hello, world! >>> 3 $ Ctrl-D
1/58 Interactive use $ python Python 2.7.5 (default, Mar 9 2014, 22:15:05) [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin Type "help", "copyright", "credits" or "license" for more information.
More informationLECTURE 3 Python Basics Part 2
LECTURE 3 Python Basics Part 2 FUNCTIONAL PROGRAMMING TOOLS Last time, we covered function concepts in depth. We also mentioned that Python allows for the use of a special kind of function, a lambda function.
More informationIntroductory Linux Course. Python I. Martin Dahlö UPPMAX. Author: Nina Fischer. Dept. for Cell and Molecular Biology, Uppsala University
Introductory Linux Course Martin Dahlö UPPMAX Author: Nina Fischer Dept. for Cell and Molecular Biology, Uppsala University August, 2018 Outline Python basics get started with Python Data types Control
More informationLecture 19: Functions, Types and Data Structures in Haskell
The University of North Carolina at Chapel Hill Spring 2002 Lecture 19: Functions, Types and Data Structures in Haskell Feb 25 1 Functions Functions are the most important kind of value in functional programming
More informationLessons on Python Modules and Packages
Lessons on Python Modules and Packages Walter Didimo [ 60 minutes ] Programs so far So far we have written and tested simple programs in one of the two following ways: using the Python interactive mode
More informationpeval Documentation Release Bogdan Opanchuk
peval Documentation Release 0.1.0 Bogdan Opanchuk January 29, 2016 Contents 1 Introduction 1 2 Implementation details 3 3 Restrictions on functions 5 4 API reference 7 4.1 Core functions..............................................
More informationPractice midterm exam
University of Washington CSE 140 Data Programming Winter 2013 Practice midterm exam February 3, 2013 Name: Solutions CSE Net ID (username): UW Net ID (username): This exam is closed book, closed notes.
More informationSequences and iteration in Python
GC3: Grid Computing Competence Center Sequences and iteration in Python GC3: Grid Computing Competence Center, University of Zurich Sep. 11 12, 2013 Sequences Python provides a few built-in sequence classes:
More informationScientific Computing: Lecture 3
Scientific Computing: Lecture 3 Functions Random Numbers More I/O Practice Exercises CLASS NOTES Ò You should be finishing Chap. 2 this week. Ò HW00 due by midnight Friday into the Box folder Ò You should
More informationInteractive use. $ python. >>> print 'Hello, world!' Hello, world! >>> 3 $ Ctrl-D
1/60 Interactive use $ python Python 2.7.5 (default, Mar 9 2014, 22:15:05) [GCC 4.2.1 Compatible Apple LLVM 5.0 (clang-500.0.68)] on darwin Type "help", "copyright", "credits" or "license" for more information.
More informationIt is better to have 100 functions operate one one data structure, than 10 functions on 10 data structures. A. Perlis
Chapter 14 Functional Programming Programming Languages 2nd edition Tucker and Noonan It is better to have 100 functions operate one one data structure, than 10 functions on 10 data structures. A. Perlis
More informationCSC312 Principles of Programming Languages : Functional Programming Language. Copyright 2006 The McGraw-Hill Companies, Inc.
CSC312 Principles of Programming Languages : Functional Programming Language Overview of Functional Languages They emerged in the 1960 s with Lisp Functional programming mirrors mathematical functions:
More informationProgramming to Python
Programming to Python Sept., 5 th Slides by M. Stepp, M. Goldstein, M. DiRamio, and S. Shah Compiling and interpreting Many languages require you to compile (translate) your program into a form that the
More informationCMPT 120 Basics of Python. Summer 2012 Instructor: Hassan Khosravi
CMPT 120 Basics of Python Summer 2012 Instructor: Hassan Khosravi Python A simple programming language to implement your ideas Design philosophy emphasizes code readability Implementation of Python was
More informationIntroduction to Concepts in Functional Programming. CS16: Introduction to Data Structures & Algorithms Spring 2017
Introduction to Concepts in Functional Programming CS16: Introduction to Data Structures & Algorithms Spring 2017 Outline Functions State Functions as building blocks Higher order functions Map Reduce
More informationPart IV. More on Python. Tobias Neckel: Scripting with Bash and Python Compact Max-Planck, February 16-26,
Part IV More on Python Compact Course @ Max-Planck, February 16-26, 2015 36 More on Strings Special string methods (excerpt) s = " Frodo and Sam and Bilbo " s. islower () s. isupper () s. startswith ("
More informationOrganization of Programming Languages CS3200/5200N. Lecture 11
Organization of Programming Languages CS3200/5200N Razvan C. Bunescu School of Electrical Engineering and Computer Science bunescu@ohio.edu Functional vs. Imperative The design of the imperative languages
More informationHistory Installing & Running Python Names & Assignment Sequences types: Lists, Tuples, and Strings Mutability
History Installing & Running Python Names & Assignment Sequences types: Lists, Tuples, and Strings Mutability Some material adapted from Upenn cmpe391 slides and other sources Invented in the Netherlands,
More informationFunctional Programming in Haskell Part I : Basics
Functional Programming in Haskell Part I : Basics Madhavan Mukund Chennai Mathematical Institute 92 G N Chetty Rd, Chennai 600 017, India madhavan@cmi.ac.in http://www.cmi.ac.in/ madhavan Madras Christian
More informationLanguage Fundamentals
Language Fundamentals VBA Concepts Sept. 2013 CEE 3804 Faculty Language Fundamentals 1. Statements 2. Data Types 3. Variables and Constants 4. Functions 5. Subroutines Data Types 1. Numeric Integer Long
More informationFunc%onal Programming in Scheme and Lisp
Func%onal Programming in Scheme and Lisp http://www.lisperati.com/landoflisp/ Overview In a func(onal programming language, func(ons are first class objects You can create them, put them in data structures,
More information