0% au considerat acest document util (0 voturi)
58 vizualizări5 pagini

Lab 4

Documentul prezintă exerciții de programare referitoare la tuple, liste și dicționare în Python. Sunt prezentate exemple și metode pentru fiecare tip de date, urmate de exerciții care presupun manipularea și parcurgerea acestor structuri de date.

Încărcat de

Gyrl Dyamonnd
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
58 vizualizări5 pagini

Lab 4

Documentul prezintă exerciții de programare referitoare la tuple, liste și dicționare în Python. Sunt prezentate exemple și metode pentru fiecare tip de date, urmate de exerciții care presupun manipularea și parcurgerea acestor structuri de date.

Încărcat de

Gyrl Dyamonnd
Drepturi de autor
© © All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
Sunteți pe pagina 1/ 5

Laborator 4

Obiective:
1. Tuple
2. Liste
3. Dicționare

Verde – Exemple Roșu- Exerciții

A Tuple - Exerciții (ipython):


Încercați mental să aflați rezultatul (tipul de date și valoarea printată) fără să rulați și
apoi verificați răspunsul:

x = (1, 2, (3, ' Ion ', 4), ' Hi ' )

1. x[0]
2. x[2]
3. x[-1]
4. x[2][2]
5. x[2][-1]
6. x[-1][-1]
7. x[-1][2]
8. x[0:1]
9. x[0:-1]
10. len(x)
11. 2 in x
12. 3 in x
13. x[0] = 8

14 (spyder)
Folosind bucla for scrieți funcția care afișează toate elementele unei tuple și indicele lor.
Exemplu:
In[]: t=('mere', 'pere', 5, (11,22))
In[]: elemT(t)
('mere', 0)
('pere', 1)
(5, 2)
((11,22), 3)
15. (spyder)
Folosind while scrieți o procedură numită oddT, care primeste o tupla ca intrare, și
returnează o noua tupla ca ieșire, afișând elementele tuplei de intrare din 2 in 2,
începând cu primul.

Exemplu:
In[]: tt=('Eu', 'nu' 'am', 'nicio', 'restanta!')
In[]: oddT(tt)
('Eu', 'am', 'restanță!' )

16. (spyder)
Aceeași problemă ca la 14, dar folosind tuple slicing.

B Liste - Exercitii(ipython) :
Încercați mental să aflați rezultatul (tipul de date și valoarea printată) fără să rulați și
apoi verificați răspunsul:

x = [11, 22, (33, ' Maria ', 44), ' Hi ' ]

1. x[0]
2. x[2]
3. x[-1]
4. x[2][2]
5. x[0:1]
6. 2 in x
7. 3 in x
8. x[0] = 88
9. fructe = [" mere ", " banane ", " cirese ", " caise ", " prune "]
fructe [1:3] = [" mure ", " capsuni ", " afine "]
print ( fructe )
10. fructe = [" mere ", " banane "]
fructe += " cirese "
print (fructe )
11. fructe = [" mere ", " banane "]
fructe += [" cirese "]
print(fructe )
12. fructe = [" mere ", " banane ", " cirese ", " caise "]
fructe . append(‘prune’)
fructe . extend ( [" ra ", " ss ", " blue "] )
fructe . remove( "banane “)
13. fructe = [" mere ", " banane ", " cirese ", " caise "]
print ( fructe . pop () )
print ( fructe . pop (1) )
del fructe [2]
14.
num = [ 1, 2, [3, 4] ]
cp = num [:]
num [0] = 5
num [2][0] = 6
print ( num )
print ( cp )

15. (spyder)
def pp():
ss = []
for i in range( 1, 26 ):
ss . append ( i * i )
return ss

s1 = pp()
print ( s1 )

16. # list comprehensions – afisez pătratele nr < 26


s2 = [ x * x for x in range( 1, 26 ) ]
print ( s2 )

17. list comprehensions – elimin pătratele care se termină in 5


s3 = [ x * x for x in range( 1, 26 ) if x %10 != 5]
print ( s3 )

18.(ipython) Cititi help-ul pentru funcțiile split() si join()


s = "I <3 cs"
list(s)
s.split('<')
L = ['a', 'b', 'c']
' '.join(L)
'_'.join(L)

C Dicționare - Exerciții (ipython):


Încercați mental să aflați rezultatul (tipul de date și valoarea printată) fără să rulați și
apoi verificați răspunsul:

animale = {'a': 'antilopa', 'b': 'babuin, 'c': 'caine'}

1. animale['d'] = 'delfin'
2.animale[‘c’]
3.animale[‘delfin’]
4.len(animale)
5.animale[‘c’] = ‘caprioara’
len(animale[‘c’])
6. babuin in animale
7. delfin in animale.values()
8. animale.keys()
9. del animale[‘b’]
len(animale)
10. animale.values()

11 funcțiile keys(), values(), items() - returnează un iterator. Iteratorul l-am convertit la


lista, prin aplicarea funcției list

fru = { " mere ":3, " pere ":5, " nuci":50 }


print ( list( fru. keys () ) )
print ( list( fru. values () ) )
print ( list( fru . items () ) )

12. Diferența între alias și metoda copy()


fr = { " masini ":3, " biciclete ":50 }
fralias = fr
frcopy = fr . copy ()
print ( id( fr ) )
print ( id( fralias ) )
print ( id( frcopy ) )

13. Metoda get () poate fi utilizată pentru a obține o valoare dintr-un dicționar, chiar și
atunci când nu știu dacă există cheia pentru care se caută valoarea.

frbk = { " mere ":3, " banane ":5, " cirese ":50 , "mango ":2 }
mere = frbk . get ( " mere " )
if mere :
print ( " am mere in cos " )
else:
print ( "nu am mere in cos ")
prune = frbk . get ( " prune " )
if prune :
print ( " am prune in cos " )
else:
print ( "nu am prune in cos ")
banane = frbk . get ( " banane ", 0 )
print ( " nr de banane in cos :", banane )
mure = frbk . get ( " mure ", 0 )
print ( " nr de mure in cos :", mure )
14.
fructe = { 'a': ['alune'], 'b': ['banane'], 'c': ['caise']}
fructe['p'] = ['prune']
fructe['p'].append('pere')
fructe['p'].append('pepene')

Scriți o funcție, numită Total care primeste ca argument un dicționar si returnează suma
numărului de valori din dicționar.
De exemplu: print(Total(fructe)) întoarce răspunsul 6

15
fructe = { 'a': ['alune'], 'b': ['banane'], 'c': ['caise']}
fructe['p'] = ['prune']
fructe['p'].append('pere')
fructe['p'].append('pepene')

Scrieți o funcție, numită Mare, care primește ca argument un dicționar și returnează


cheia corespunzătoare intrării cu cel mai mare număr de valori asociate acesteia. Dacă
există mai mult de o astfel de intrare, întoarceți oricare dintre chei.
De exemplu: Mare (fructe) întoarce 'p'

S-ar putea să vă placă și