Python is an interactive, portable, and extensible programming language. It has a simple syntax and supports functions, classes, modules, and built-in data structures like lists, tuples, and dictionaries. Control structures include conditional statements like if/else and loops like while and for. Functions can take parameters with default values and return values. Variables exist in module-level global scope or local function scope. Exceptions can be handled with try/except blocks.
Python is an interactive, portable, and extensible programming language. It has a simple syntax and supports functions, classes, modules, and built-in data structures like lists, tuples, and dictionaries. Control structures include conditional statements like if/else and loops like while and for. Functions can take parameters with default values and return values. Variables exist in module-level global scope or local function scope. Exceptions can be handled with try/except blocks.
Features of Python Interactive: one can launch a Python console and run instructions directly it. Portable: available on most existing systems. It only requires a C compiler to be ported to any new platform. Structure: functions, classes, modules. It is easy to embed Python with C and C++. The user can write their own code in C or C++ and compile it as Python modules or functions. That makes Python extensible. Usual applications: scripts including CGI scripts, GUIs, scientific computing. Many existing libraries for all sort of purposes. Syntax Rules The syntax is designed to be simplified as compared to other languages like C/C++. Every compound instruction ends with ":" There are no blocks of code; blocks are implicitly created by indentation. Expressions: usual arithmetic operators, named logic operators: and, or, not. Assignments use the = sign but they don't have to end with ";" Comments start with # as in shell scripting. Variables are declared by assigning them a value and they are local to the block where they appear first. Control Structures Conditional: Loops: if condition: while condition: instructions instructions elif condition: #* else: # optional instructions instructions else: # optional instructions for var in S: instructions else: # optional instructions for i in range(n): instructions Built-in Data Structures Lists: linked lists implementing the subscript operator: x = [1,2,3] x.append(4) print x[2] # result: 3 Tupples: constant kind of arrays x = (1,2,3) Dictionaries: association lists x = {} x["word"] = reference for k in x.keys(): print x[k] Functions and Parameters Function definition: def function_name (par1, par2, ...): body of the function It supports default values for parameters. All parameters are value parameters. Any variable storing a complex data structure contains a reference to it. Any changes to the content of such a data structure in the function will affect the variable passed in the function call. Assignments involving a complex data structure don't make a copy of it. More Built-in Functions Function type: returns the type of an object. type(0) – returns <type ‘int’> Checking if something is an integer: if type(x) == type(0): ... Reading a value from the terminal: input() x = input() Returning a value from a function: return True
Artificial Intelligence – D. Vrajitoru
Example of Conditional def check_type(x): if type(x) == type(0): print x, "is an integer" elif type(x) == type(1.0): print x, "is a float" elif type(x) == type(""): print x, "is a string" elif type(x) == type([]): print x, "is an array" ...
Artificial Intelligence – D. Vrajitoru
Example of while/else def Euler(a, b): if b==0: return a r = a % b while r: a = b b = r r = a % b else: print "a divisible by b" return b return r Artificial Intelligence – D. Vrajitoru Booleans Truth values: True and False. False is equivalent with 0, and empty list [], an empty dictionary {}. Anything else is equivalent to True. Example: x = 0 if not x: print “0 is False”
Artificial Intelligence – D. Vrajitoru
Default Values for Parameters Default values: def function (var1 = value, var2 = value, ...): Just like in C++, all the parameters that have default values must be grouped at the end. def GCD1(a=10, b=20): ... GCD1() -> 10 GCD1(125) -> 5 GCD1(12, 39) -> 3
Artificial Intelligence – D. Vrajitoru
Variables and Scope Module: one python file. Global scope: exists in the module in which they are declared. Local scope: local to the function inside which it is declared. Global variables in a module can be accessed from somewhere else using the notation module.variable. Example: string.digits contains ‘0123456789’.
Artificial Intelligence – D. Vrajitoru
Example Scope def test_scope(): for i in range(4): for j in range (3): x = i*10+j if x>20: print x, print x test_scope() 21 22 30 31 32 32 Artificial Intelligence – D. Vrajitoru Try - Except Try: attempts to execute an instruction. If the operation is successful, it moves on. If not, we have the option of doing something else with the instruction except: Another option: except error_type: which does something only for a particular type of exception. Artificial Intelligence – D. Vrajitoru def scope1(): y = 15 y = 20 def scope2(): y = 25 def scope3(): try: print y except: print "cannot access global y" print days y = 25 print y days=["monday", "tuesday"]
Python Advanced Programming: The Guide to Learn Python Programming. Reference with Exercises and Samples About Dynamical Programming, Multithreading, Multiprocessing, Debugging, Testing and More
Python Advanced Programming: The Guide to Learn Python Programming. Reference with Exercises and Samples About Dynamical Programming, Multithreading, Multiprocessing, Debugging, Testing and More