+ All Categories
Home > Documents > Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are...

Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are...

Date post: 19-Jul-2020
Category:
Upload: others
View: 1 times
Download: 0 times
Share this document with a friend
78
Python BASICS Introduction to Python programming, basic concepts: formatting, naming conventions, variables, etc.
Transcript
Page 1: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

PythonBASICS

Introduction to Python programming, basic

concepts: formatting, naming conventions,

variables, etc.

Page 2: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

#include <stdio.h>

int main()

{

printf("Hello, world!");

return 0;

}

3/8/2017 Python basics 2

Page 3: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

print("Hello, world!")

3/8/2017 Python basics 3

Page 4: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

# this will print "Hello, world!"

print("Hello, world!")

3/8/2017 Python basics 4

inline comment

Page 5: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Keywords

• and

• del

• from

• not

• while

• as

• elif

• global

• or

• with

• assert

• else

• if

• pass

• yield

• break

• except

• import

• class

• exec

3/8/2017 Python basics 5

• in

• raise

• continue

• finally

• is

• return

• def

• for

• lambda

• try

Page 6: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Variables

3/8/2017 Python basics 6

language_name = "Python"

naming convention: joined_lower

this is a string

Page 7: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Variables

3/8/2017 Python basics 7

language_name = "Python"

version = '3.6.0'

introduced = 1991

is_awesome = True

Page 8: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Type Inference

3/8/2017 Python basics 8

language_name = "Python" # string

version = '3.6.0' # another string

introduced = 1991 # integer

is_awesome = True # boolean

actual type can be checked with type()

play_with_types.py

Page 9: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

String

3/8/2017 Python basics 9

some_string = "I'm a string"

another_string = 'I'm a string, too'

Page 10: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

String

3/8/2017 Python basics 10

some_string = "I'm a string"

another_string = 'I'm a string, too'

# SyntaxError: invalid syntax

Page 11: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

String

3/8/2017 Python basics 11

another_string = 'I am a string, too'

another_strig = 'I\'m a string, too'

escape sequence

Page 12: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

String

3/8/2017 Python basics 12

long_string = """I am a long string.

I span over two lines."""

long_string = '''I am another long

string.

I span over three lines.

I am composed by three sentences.'''

Page 13: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

If Statement

3/8/2017 Python basics 13

people = 20

cats = 30

if people < cats:

print("Too many cats! We are doomed!")

if people > cats:

print("Not many cats! We are safe!")

4 spaces

4 spaces

Page 14: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

If Statement

3/8/2017 Python basics 14

people = 20

cats = 30

if people < cats:

print("Too many cats! We are doomed!")

elif people > cats:

print("Not many cats! We are safe!")

else:

print("We can't decide.")

Page 15: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Comparators and Booleans Operators

3/8/2017 Python basics 15

print(2 == 1)

print('string' == "string")

print(not False)

print(2==1 and True)

print(2==1 or True)

Page 16: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Comparators and Booleans Operators

3/8/2017 Python basics 16

print(2 == 1) # False

print('string' == "string") # True

print(not False) # True

print(2==1 and True) # False

print(2==1 or True) # True

Page 17: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Characters

3/8/2017 Python basics 17

for char in "hello":

print(char)

h

e

l

l

o

Page 18: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Characters

3/8/2017 Python basics 18

say_hello = "hello!"

print(say_hello[1])

e

index

Page 19: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Characters

3/8/2017 Python basics 19

say_hello = "hello!"

print(type(say_hello[1]))

<class 'str'>

Page 20: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Combining Strings

3/8/2017 Python basics 20

language_name = "Python"

version = '3.6.0'

python_version = language_name + version

# python_version is Python3.6.0

print("my " + "name") # my name

concatenation

Page 21: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Combining Strings

3/8/2017 Python basics 21

language_name = "Python"

a_lot_of_python = language_name*3

# a_lot_of_python is PythonPythonPython

repetition

Page 22: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Building Complex Strings

3/8/2017 Python basics 22

a = 3

b = 5

# 3 times 5 is 15

print(a, "times", b, "is", a*b)

works with print(), only

Page 23: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Building Complex Strings

3/8/2017 Python basics 23

a = 3

b = 5

# 3 times 5 is 15

result = a + " times " + b + " is " + a*b

Page 24: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Building Complex Strings

3/8/2017 Python basics 24

a = 3

b = 5

# 3 times 5 is 15

result = a + " times " + b + " is " + a*b

#TypeError: unsupported operand type(s)

Page 25: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Building Complex Strings

3/8/2017 Python basics 25

a = 3

b = 5

# 3 times 5 is 15

result = str(a) + " times " + str(b) + "

is " + str(a*b)

Page 26: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

String Interpolation

3/8/2017 Python basics 26

a = 3

b = 5

# 3 times 5 is 15

result = "%d times %d is %d" %(a, b, a*b)

Specifiers• %s, format strings• %d, format numbers• %r, raw representation

tuplespecifiers.py

Page 27: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

String Interpolation

3/8/2017 Python basics 27

a = 3

b = 5

# 3 times 5 is 15

result = "{} times {} is {}".format(a, b,

a*b)

new way!

Page 28: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

String Immutability

3/8/2017 Python basics 28

# hello

say_hello = "helko"

# ops…

say_hello[3] = "l"

Page 29: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

String Immutability

3/8/2017 Python basics 29

# hello

say_hello = "helko"

# ops…

say_hello[3] = "l"

# TypeError

Page 30: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

String Immutability

3/8/2017 Python basics 30

# hello

say_hello = "helko"

# ops…

say_hello = "hello"

Other operations with strings? Python docs

Page 31: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Getting Input

3/8/2017 Python basics 31

print("How old are you?")

age = input() # age is a string

print("You are " + age + " years old")

Page 32: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Getting Input

3/8/2017 Python basics 32

print("How old are you?")

age = input() # age is a string

print("You are " + age + " years old")

# I want "age" to be a number!

age = int(input())

Page 33: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Getting Input

3/8/2017 Python basics 33

age = input("How old are you? ")

print("You are " + age + " years old")

Page 34: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

List

3/8/2017 Python basics 34

fruits = ["apples", "oranges", "pears"]

count = [1, 2, 3, 4, 5]

change = [1, "pennies", 2, "dimes"]

a datatype to store multiple items, in sequence

Page 35: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Dictionary

3/8/2017 Python basics 35

legs = {"ant": 6, "snake": 0, "cow": 4}

states = {"Italy": "IT", "Germany": "DE"}

a datatype to store multiple items, not in sequence

key, immutable

value

Page 36: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Loops

3/8/2017 Python basics 36

doctor = 1

while doctor <= 13:

exterminate(doctor)

doctor += 1

Page 37: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

For Loop: Strings

3/8/2017 Python basics 37

for char in "hello":

print(char)

h

e

l

l

o

Page 38: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

For Loop: Ranges

3/8/2017 Python basics 38

for number in range(0,5):

print(number)

0

1

2

3

4

Page 39: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

For Loop: Ranges

3/8/2017 Python basics 39

for number in range(0,25,5):

print(number)

0

5

10

15

20

Page 40: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

For Loop: Lists

3/8/2017 Python basics 40

fruits = ["apples", "oranges", "pears"]

for fruit in fruits:

print("I love", fruit)

I love apples

I love oranges

I love pears

Page 41: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

For Loop: Dictionaries

3/8/2017 Python basics 41

legs = {"ant": 6, "snake": 0, "cow": 4}

for (animal, number) in legs.items():

print("{} has {} legs".format(animal,

number))

ant has 6 legs

snake has 0 legs

cow has 4 legs

Page 42: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Printing a List

3/8/2017 Python basics 42

to_buy = ["eggs", "milk"]

print(to_buy)

['eggs', 'milk']

Page 43: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Printing a List

3/8/2017 Python basics 43

to_buy = ["eggs", "milk"]

print(to_buy[0])

eggs

Page 44: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a List

3/8/2017 Python basics 44

to_buy = ["eggs", "milk"]

print(to_buy[0])

to_buy[0] = "butter"

print(to_buy[0])

eggs

butter

Page 45: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a List

3/8/2017 Python basics 45

to_buy = ["eggs", "milk"]

# I need to buy chocolate!

to_buy.append("chocolate")

['eggs', 'milk', 'chocolate']

Page 46: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a List

3/8/2017 Python basics 46

to_buy = ["eggs", "milk"]

to_buy.append("chocolate")

to_buy.extend(["flour", "cheese"])

['eggs', 'milk', 'chocolate', 'flour', 'cheese']

Page 47: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a List

3/8/2017 Python basics 47

to_buy = ["eggs", "milk"]

to_buy.append("chocolate")

to_buy = to_buy + ["flour", "cheese"]

['eggs', 'milk', 'chocolate', 'flour', 'cheese']

concatenation

Page 48: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a List

3/8/2017 Python basics 48

to_buy = ["eggs", "milk", "chocolate",

"flour", "cheese"]

print(to_buy[1:3])

['milk', 'chocolate']

slice operator

Page 49: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a List

3/8/2017 Python basics 49

to_buy = ["eggs", "milk", "chocolate",

"flour", "cheese"]

# make a full copy of the list

remember = to_buy[:]

works with strings, too

Page 50: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a List

3/8/2017 Python basics 50

to_buy = ["eggs", "milk", "chocolate",

"flour", "cheese"]

# I don't need cheese!

to_buy.pop()

# … neither milk, by the way!

to_buy.pop(1)

Page 51: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a List

3/8/2017 Python basics 51

to_buy = ["eggs", "milk", "chocolate",

"flour", "cheese"]

# I don't need cheese!

to_buy.remove("cheese")

# … neither milk, by the way!

to_buy.remove("milk")

Page 52: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a List

3/8/2017 Python basics 52

to_buy = ["eggs", "milk", "chocolate",

"flour", "cheese"]

# I want my original list back!

del to_buy[2:6]

['eggs', 'milk']

Page 53: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Strings vs. Lists

3/8/2017 Python basics 53

A string is a sequence of characters…

… but a list of characters is not a string

language_name = "Python"

# string to list

name = list(language_name)

Page 54: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Strings vs. Lists

3/8/2017 Python basics 54

sentence = "this is AmI"

# break a string into separate words

words = sentence.split()

['this', 'is', 'AmI']

Page 55: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Copying Lists

3/8/2017 Python basics 55

fruits = ['apple', 'orange']

favorite_fruits = fruits

# add a fruit to the original list

fruits.append('banana')

print('The fruits now are:', fruits)

print('My favorite fruits are', favorite_fruits)

Fruits are: ['apple', 'orange', 'banana']

My favorite fruits are: ['apple', 'orange',

'banana']

???

Page 56: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Copying Lists

3/8/2017 Python basics 56

fruits = ['apple', 'orange']

favorite_fruits = fruits

# add a fruit to the original list

fruits.append('banana')

print('The fruits now are:', fruits)

print('My favorite fruits are', favorite_fruits)

We do not make a copy of the entire list, but we only make a reference to it!

Page 57: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Copying Lists (For Real!)

3/8/2017 Python basics 57

# option 1: slice

favorite_fruits = fruits[:]

#option 2: create a new list - best!

favorite_fruits = list(fruit)

#extend an empty list

favorite_fruits.extends(fruit)

Other operations with lists? Python docs

Page 58: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Printing a Dictionary

3/8/2017 Python basics 58

legs = {"ant": 6, "snake": 0 }

print(legs)

{'ant': 6, 'snake': 0}

Page 59: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a Dictionary

3/8/2017 Python basics 59

legs = {"ant": 6, "snake": 0 }

legs["spider"] = 273

{'ant': 6, 'snake': 0, 'spider': 273}

Page 60: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a Dictionary

3/8/2017 Python basics 60

legs = {"ant": 6, "snake": 0 }

legs["spider"] = 273 # basically, run!

legs["spider"] = 8 # better!

{'ant': 6, 'snake': 0, 'spider': 8}

Page 61: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modifying a Dictionary

3/8/2017 Python basics 61

legs = {"ant": 6, "snake": 0, "spider": 8}

# I don't like spiders

del legs["spider"]

# Clear all the things!

legs.clear()

Page 62: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Retrieving a Value from a Dictionary

3/8/2017 Python basics 62

legs = {"ant": 6, "snake": 0}

# get "ant"!

legs["ant"] # 6

# get "spider"

legs["spider"]

Page 63: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Retrieving a Value from a Dictionary

3/8/2017 Python basics 63

legs = {"ant": 6, "snake": 0}

# get "ant"!

legs["ant"] # 6

# get "spider"

legs["spider"]

# KeyError: spider

Page 64: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Retrieving a Value from a Dictionary

3/8/2017 Python basics 64

legs = {"ant": 6, "snake": 0}

# check if "spider" is in the dictionary

"spider" in legs # False

# get "spider" without throwing errors

legs.get("spider") # None

# get "spider" with a custom value

legs.get("spider", "Not present")

Page 65: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Functions

3/8/2017 Python basics 65

def say_hello():

print("Hello!")

say_hello()

definition

call

Page 66: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Functions with Parameters

3/8/2017 Python basics 66

def say_hello_to(name):

print("Hello", name)

say_hello_to("AmI students")

Page 67: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Default Parameter Values

3/8/2017 Python basics 67

def say_hello_to(name="AmI"):

print("Hello", name)

say_hello_to() # Hello AmI

say_hello_to("students") # Hello students

Page 68: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Returning Values

3/8/2017 Python basics 68

def build_greetings(name="AmI"):

return "Hello" + name

greeting = build_greetings()

print(greeting) # Hello AmI

Page 69: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Returning Multiple Values

3/8/2017 Python basics 69

def build_greetings(name="AmI"):

return ("Hello", name)

(greeting, person) = build_greetings()

print(greeting + " to " + person)

# Hello to AmI

Page 70: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Documenting Functions

3/8/2017 Python basics 70

def build_greetings(name="AmI"):

'''Build a greeting in the format

Hello plus a given name'''

return ("Hello", name)

docstring

Page 71: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Modules

3/8/2017 Python basics 71

• A way to logically organize the code

• They are files consisting of Python code

– they can define (and implement) functions, variables, etc.

– typically, the file containing a module is called in the same way

• e.g., the math module resides in a file named math.py

Page 72: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Importing a Module

3/8/2017 Python basics 72

import math # import the math module

print math.pi # print 3.141592…

from math import pi # import pi, only!

print pi # print 3.141592…

from math import * # import all the names

print pi DO NOT USE

Page 73: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Command Line Parameters

3/8/2017 Python basics 73

from sys import argv

script, first = argv

print("The script is called:", script)

print("The parameter is:", first)

> python my_script.py one

The script is called: my_script.py

The parameter is: one

unpacking

Page 74: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Reading Files

3/8/2017 Python basics 74

from sys import argv

filename = argv[1]

txt = open(filename)

print("Here's your file %r:", % filename)

print(txt.read())

open the file

show the file content

Page 75: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Writing Files

3/8/2017 Python basics 75

from sys import argv

filename = argv[1]

# open in write mode and empty the file

target = open(filename, "w")

# write a string into the file

target.write("This is the new content")

target.close() # close the file

Page 76: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

References and Links

• Python Documentation, http://docs.python.org/3

• The Python Tutorial, http://docs.python.org/3/tutorial/

• Online Python Tutor, http://pythontutor.com

• «Think Python: How to think like a computer scientist», 2nd edition, Allen Downey, Green Tea Press, Needham, Massachusetts

• «Dive into Python 3», Mark Pilgrim

• «Learning Python» (5th edition), Mark Lutz, O'Reilly

3/8/2017 Python basics 76

Page 77: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

Questions?01QZP AMBIENT INTELLIGENCE

Luigi De Russis

[email protected]

Page 78: Python - polito.it3/8/2017 Python basics 71 •A way to logically organize the code •They are files consisting of Python code –they can define (and implement) functions, variables,

License

• This work is licensed under the Creative Commons “Attribution-NonCommercial-ShareAlike Unported (CC BY-NC-SA 4.0)” License.

• You are free:– to Share - to copy, distribute and transmit the work– to Remix - to adapt the work

• Under the following conditions:– Attribution - You must attribute the work in the manner specified by the

author or licensor (but not in any way that suggests that they endorse you or your use of the work).

– Noncommercial - You may not use this work for commercial purposes.– Share Alike - If you alter, transform, or build upon this work, you may

distribute the resulting work only under the same or similar license to this one.

• To view a copy of this license, visit https://creativecommons.org/licenses/by-nc-sa/4.0/

3/8/2017 Python basics 78


Recommended