Forum : "Questions"

Script exemples CM 2

Script exemples CM 2

par FACCANONI Gloria,
Nombre de réponses : 0

Bonjour,

je copie ici les exemples affichés pendant le CM-2.

Pour vérifier l'éxecution pas à pas voir ici http://pythontutor.com/visualize.html#mode=edit

 

### CM-2 : list, tuple, range, if, for while

## Listes
L=[ 'a' , 5 , 'b' , [1,5,19] ]

print(f"L={L}")
print(f"L[2]={L[2]}")
print(f"L[-2]={L[-2]}")
print(f"L[:2]={L[:2]}")
print(f"L[:-2]={L[:-2]}")
print(f"L[2:]={L[2:]}")
print(f"L[-2:]={L[-2:]}")
print(f"L[::-1]={L[::-1]}")

print('\n'+'_'*30+'\n')
# sous-liste
print(f"L[-1]={L[-1]}")
print(f"L[-1][1]={L[-1][1]}")

print('\n'+'_'*30+'\n')
# copie de liste
a=5
b=a
a=2
print("a=",a,"b=",b)

a=[5,5,5]
b=a
a[1]=2 # en modifiant a on modifie b
print("a=",a,"b=",b)

a=[5,5,5]
b=a
b[1]=3 # en modifiant b on modifie a
print("a=",a,"b=",b)

import copy
a=[5,5,5]
b=copy.deepcopy(a)
b[1]=3
print("a=",a,"b=",b)

print('\n'+'_'*30+'\n')
# fct & methodes
L=[6,20,30,18,4,5]

print(L)
print(sum(L))
print(max(L))
print(min(L))

print('\n')
print(L)
C=sorted(L)
print(C)
print(L)

print('\n')
print(L)
L.sort()
print(L)

print('\n'+'_'*30+'\n')
## Tuples : des listes non modifiables
T=(1,4,'r')
print(T[::-1])

print('\n'+'_'*30+'\n')
## Range
r=range(10)
r=range(5,10)
r=range(5,10,2)
r=range(5,9,2)
r=range(10,-5,-2)
# print(r) # c'est un iterateur, il n'affiche pas le contenu si on ne l'oblige pas avec une liste
print(list(r)) # list seulement pour l'affichage

print('\n'+'_'*30+'\n')
## set : on les utilisera juste pour enlever les doublons

L=[1,3,2,3,3,4,5]
print(L)
print(set(L))
print(list(set(L)))

print('\n'+'%'*50+'\n')
## If
a=5
if a>6:
print('Je suis ici')
a=12
b=7
print(a,b)

print('\n'+'_'*30+'\n')

a=30
if a>6:
print('Je suis ici')
else:
print('Je suis là')
b=7
print(a,b)

print('\n'+'_'*30+'\n')

a=5
if a>6:
print('Je suis ici')
elif 3<a<6: # elif 3<a and a>6 :
print('Oups')
else:
print('Je suis là')
b=7
print(a,b)

print('\n'+'%'*50+'\n')
### Boucles

## for
for i in [5,7,9,'toto']:
print(i)

for i in range(10):
print(i)

for c in "Ciao":
print(c)

# for avec enumerate

s="Ciao"
for i in range(len(s)):
print(i,s[i])

s="Ciao"
for i,c in enumerate(s):
print(i,c)

# for avec append
L=[]
for n in range(10):
L.append(n**2)

print(L)

# boucles imbriquées
for n in range(10):
for m in ['a','b']:
print(n,m)

for m in ['a','b']:
for n in range(10):
print(n,m)

# boucles avec if, bien noter le role de l'indentation
for n in range(6):
if n==4:
print('Coucou')
print(n)

for n in range(6):
if n==4:
print('Coucou')
print(n)

print('\n'+'%'*50+'\n')
## while
i=0
while i<5:
print(i)
i=i+1 # i+=1

# cet utilisation de while n'est pas très utile
# dans ce cas une boucle for est plus pratique
for i in range(5):
print(i)

# recherche de seuil (boucle while pratiquement obbligatoire)
i=0
somme=i
while somme<=100:
i+=1
somme+=i
print(i,somme)

# En effet, si on affiche tout:
i=0
somme=i
while somme<=100:
i+=1
somme+=i
print(i,somme)