Python 3.7.3 | packaged by conda-forge | (default, Jul 1 2019, 21:52:21)

Type "copyright", "credits" or "license" for more information.


IPython 7.9.0 -- An enhanced Interactive Python.


In [1]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')


In [2]: palindromaP('amoRoma')

Out[2]: True


In [3]: palindromaP('amoRoma2')

Out[3]: False


In [4]: palindromaP('')

Out[4]: True


In [5]: palindromaP('e')

Out[5]: True


In [6]: palindromaP('ee')

Out[6]: True


In [7]: palindromaP('eE')

Out[7]: False


In [8]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')


In [9]: palindroma_appoggio('amoRoma')

Out[9]: True


In [10]: palindroma_appoggio('amoRom')

Out[10]: False


In [11]: palindroma_appoggio('')

Out[11]: True


In [12]: palindroma_appoggio('q')

Out[12]: True


In [13]: palindroma_appoggio('qq')

Out[13]: True


In [14]: palindroma_appoggio('qr')

Out[14]: True


In [15]: debugfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

> /home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py(7)<module>()

5

6 @author: andrea

----> 7 """

8

9 def palindromaP( stringa ):



ipdb>

ipdb>

ipdb>


In [16]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')


In [17]: palindroma_appoggio('qr')

Out[17]: True


In [18]: debugfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

> /home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py(7)<module>()

5

6 @author: andrea

----> 7 """

8

9 def palindromaP( stringa ):



ipdb>

ipdb>


In [19]: %debug palindroma_appoggio('qr')

NOTE: Enter 'c' at the ipdb> prompt to continue execution.

> <string>(1)<module>()



ipdb>

ipdb> c

> /home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py(27)palindroma_appoggio()

23 return False

24 return palindroma_efficiente(stringa, primo+1, ultimo-1)

25

26 def palindroma_appoggio(stringa):

4--> 27 return palindroma_efficiente(stringa, 0, len(stringa)-1)


--Call--

> /home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py(19)palindroma_efficiente()

17

18

---> 19 def palindroma_efficiente(stringa, primo, ultimo):

20 if (ultimo-primo)<2:

21 return True



ipdb>

ipdb>


In [20]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')


In [21]: palindroma_appoggio('qr')

Out[21]: False


In [22]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')


In [23]: palindromaP('amoRoma')

Out[23]: True


In [24]: palindromaP.trace('amoRoma')

------------------- Starting recursion -------------------

entering palindromaP('amoRoma',)

|-- entering palindromaP('moRom',)

|--|-- entering palindromaP('oRo',)

|--|--|-- entering palindromaP('R',)

|--|--|-- exiting palindromaP('R',) returns True

|--|-- exiting palindromaP('oRo',) returns True

|-- exiting palindromaP('moRom',) returns True

exiting palindromaP('amoRoma',) returns True

-------------------- Ending recursion --------------------

Num calls: 4

Out[24]: True


In [25]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [26]: palindroma_efficiente.trace('amoRoma')

------------------- Starting recursion -------------------

entering palindroma_efficiente('amoRoma',)

Traceback (most recent call last):


File "<ipython-input-26-9829dfeb91b1>", line 1, in <module>

palindroma_efficiente.trace('amoRoma')


File "/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/rtrace.py", line 26, in trace

answer = self.__call__(*args,**kargs)


File "/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/rtrace.py", line 44, in __call__

answer = self.f(*args,**kargs)


TypeError: palindroma_efficiente() missing 2 required positional arguments: 'primo' and 'ultimo'



In [27]:


In [27]: palindroma_appoggio.trace('amoRoma')

------------------- Starting recursion -------------------

entering palindroma_appoggio('amoRoma',)

|-- entering palindroma_efficiente('amoRoma', 0, 6)

|--|-- entering palindroma_efficiente('amoRoma', 1, 5)

|--|--|-- entering palindroma_efficiente('amoRoma', 2, 4)

|--|--|--|-- entering palindroma_efficiente('amoRoma', 3, 3)

|--|--|--|-- exiting palindroma_efficiente('amoRoma', 3, 3) returns True

|--|--|-- exiting palindroma_efficiente('amoRoma', 2, 4) returns True

|--|-- exiting palindroma_efficiente('amoRoma', 1, 5) returns True

|-- exiting palindroma_efficiente('amoRoma', 0, 6) returns True

exiting palindroma_appoggio('amoRoma',) returns True

-------------------- Ending recursion --------------------

Num calls: 1

Out[27]: True


In [28]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [29]: LL = [1, 5, 7, 90]


In [30]: MM = [-17, 42, 666, 1000]


In [31]: merge(LL, MM)

Out[31]: [-17, 1, 5, 7, 42, 90, 666, 1000]


In [32]: merge.trace(LL, MM)

------------------- Starting recursion -------------------

entering merge([1, 5, 7, 90], [-17, 42, 666, 1000])

|-- entering merge([1, 5, 7, 90], [42, 666, 1000])

|--|-- entering merge([5, 7, 90], [42, 666, 1000])

|--|--|-- entering merge([7, 90], [42, 666, 1000])

|--|--|--|-- entering merge([90], [42, 666, 1000])

|--|--|--|--|-- entering merge([90], [666, 1000])

|--|--|--|--|--|-- entering merge([], [666, 1000])

|--|--|--|--|--|-- exiting merge([], [666, 1000]) returns [666, 1000]

|--|--|--|--|-- exiting merge([90], [666, 1000]) returns [90, 666, 1000]

|--|--|--|-- exiting merge([90], [42, 666, 1000]) returns [42, 90, 666, 1000]

|--|--|-- exiting merge([7, 90], [42, 666, 1000]) returns [7, 42, 90, 666, 1000]

|--|-- exiting merge([5, 7, 90], [42, 666, 1000]) returns [5, 7, 42, 90, 666, 1000]

|-- exiting merge([1, 5, 7, 90], [42, 666, 1000]) returns [1, 5, 7, 42, 90, 666, 1000]

exiting merge([1, 5, 7, 90], [-17, 42, 666, 1000]) returns [-17, 1, 5, 7, 42, 90, 666, 1000]

-------------------- Ending recursion --------------------

Num calls: 7

Out[32]: [-17, 1, 5, 7, 42, 90, 666, 1000]


In [33]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [34]: from random import randint


In [35]: L = [ randint(-100, 100) for _ in range(10) ]


In [36]: L

Out[36]: [-24, -2, -43, -22, 45, -83, -83, 79, 58, 24]


In [37]: merge_sort(L)

Out[37]: [-83, -83, -43, -24, -22, -2, 24, 45, 58, 79]


In [38]: merge_sort.trace(L)

------------------- Starting recursion -------------------

entering merge_sort([-24, -2, -43, -22, 45, -83, -83, 79, 58, 24],)

|-- entering merge_sort([-24, -2, -43, -22, 45],)

|--|-- entering merge_sort([-24, -2],)

|--|--|-- entering merge_sort([-24],)

|--|--|-- exiting merge_sort([-24],) returns [-24]

|--|--|-- entering merge_sort([-2],)

|--|--|-- exiting merge_sort([-2],) returns [-2]

|--|-- exiting merge_sort([-24, -2],) returns [-24, -2]

|--|-- entering merge_sort([-43, -22, 45],)

|--|--|-- entering merge_sort([-43],)

|--|--|-- exiting merge_sort([-43],) returns [-43]

|--|--|-- entering merge_sort([-22, 45],)

|--|--|--|-- entering merge_sort([-22],)

|--|--|--|-- exiting merge_sort([-22],) returns [-22]

|--|--|--|-- entering merge_sort([45],)

|--|--|--|-- exiting merge_sort([45],) returns [45]

|--|--|-- exiting merge_sort([-22, 45],) returns [-22, 45]

|--|-- exiting merge_sort([-43, -22, 45],) returns [-43, -22, 45]

|-- exiting merge_sort([-24, -2, -43, -22, 45],) returns [-43, -24, -22, -2, 45]

|-- entering merge_sort([-83, -83, 79, 58, 24],)

|--|-- entering merge_sort([-83, -83],)

|--|--|-- entering merge_sort([-83],)

|--|--|-- exiting merge_sort([-83],) returns [-83]

|--|--|-- entering merge_sort([-83],)

|--|--|-- exiting merge_sort([-83],) returns [-83]

|--|-- exiting merge_sort([-83, -83],) returns [-83, -83]

|--|-- entering merge_sort([79, 58, 24],)

|--|--|-- entering merge_sort([79],)

|--|--|-- exiting merge_sort([79],) returns [79]

|--|--|-- entering merge_sort([58, 24],)

|--|--|--|-- entering merge_sort([58],)

|--|--|--|-- exiting merge_sort([58],) returns [58]

|--|--|--|-- entering merge_sort([24],)

|--|--|--|-- exiting merge_sort([24],) returns [24]

|--|--|-- exiting merge_sort([58, 24],) returns [24, 58]

|--|-- exiting merge_sort([79, 58, 24],) returns [24, 58, 79]

|-- exiting merge_sort([-83, -83, 79, 58, 24],) returns [-83, -83, 24, 58, 79]

exiting merge_sort([-24, -2, -43, -22, 45, -83, -83, 79, 58, 24],) returns [-83, -83, -43, -24, -22, -2, 24, 45, 58, 79]

-------------------- Ending recursion --------------------

Num calls: 19

Out[38]: [-83, -83, -43, -24, -22, -2, 24, 45, 58, 79]


In [39]: ls

11/ lezione10.py

26/ lezione11-ipython-console.html

26.py lezione11.py

27/ lezione12-ipython-console.html

3ciime-rh.png lezione12.py

3cime-blur.png lezione13.py

3cime-bw.png lezione1-ipython-console.html

3cime-c1_2.png lezione1.py

3cime-c2.png lezione2-ipython-console-2.html

3cime-CCC.png lezione2-ipython-console.html

3cime-contrasto2.png lezione2.py

3cime-dx.png lezione3-ipython-console.html

3cime-filtro-grigio.png lezione3.py

3cime-lente0.75.png lezione4-ipython-console.html

3cime-lente2.png lezione4.py

3cime-negativo.png lezione5-ipython-console.html

3cime.png lezione5.py

3cime-rv.png lezione6-ipython-console.py

3cime-schiarita.png lezione6.py

3cime-tra.png lezione7-ipython-console.html

54/ lezione7.py

54.py lezione8-ipython-console.html

'ANALISI E PROGETTO.txt' lezione8.py

esempio2.json lezione9-ipython-console.html

esempio.json lezione9.py

'FILE E WEB.txt' paperino.txt

files/ png.py

files.zip __pycache__/

immagini.py rtrace.py


In [40]: ls

11/ lezione10.py

26/ lezione11-ipython-console.html

26.py lezione11.py

27/ lezione12-ipython-console.html

3ciime-rh.png lezione12.py

3cime-blur.png lezione13.py

3cime-bw.png lezione1-ipython-console.html

3cime-c1_2.png lezione1.py

3cime-c2.png lezione2-ipython-console-2.html

3cime-CCC.png lezione2-ipython-console.html

3cime-contrasto2.png lezione2.py

3cime-dx.png lezione3-ipython-console.html

3cime-filtro-grigio.png lezione3.py

3cime-lente0.75.png lezione4-ipython-console.html

3cime-lente2.png lezione4.py

3cime-negativo.png lezione5-ipython-console.html

3cime.png lezione5.py

3cime-rv.png lezione6-ipython-console.py

3cime-schiarita.png lezione6.py

3cime-tra.png lezione7-ipython-console.html

54/ lezione7.py

54.py lezione8-ipython-console.html

'ANALISI E PROGETTO.txt' lezione8.py

esempio2.json lezione9-ipython-console.html

esempio.json lezione9.py

'FILE E WEB.txt' paperino.txt

files/ png.py

files.zip __pycache__/

immagini.py rtrace.py


In [41]: dir

Out[41]: <function dir>


In [42]: import os


In [43]: os.listdir()

Out[43]:

['lezione9-ipython-console.html',

'__pycache__',

'esempio.json',

'3cime-CCC.png',

'3cime.png',

'lezione4.py',

'lezione11.py',

'11',

'3cime-negativo.png',

'3cime-c1_2.png',

'3cime-bw.png',

'lezione2-ipython-console-2.html',

'3cime-c2.png',

'lezione12-ipython-console.html',

'lezione2-ipython-console.html',

'lezione13.py',

'3cime-lente0.75.png',

'3cime-lente2.png',

'3cime-contrasto2.png',

'lezione6-ipython-console.py',

'lezione8.py',

'lezione8-ipython-console.html',

'27',

'lezione12.py',

'ANALISI E PROGETTO.txt',

'3cime-filtro-grigio.png',

'26.py',

'3ciime-rh.png',

'paperino.txt',

'rtrace.py',

'lezione1.py',

'lezione6.py',

'lezione1-ipython-console.html',

'lezione3.py',

'lezione4-ipython-console.html',

'lezione9.py',

'lezione2.py',

'3cime-dx.png',

'54.py',

'3cime-blur.png',

'FILE E WEB.txt',

'3cime-schiarita.png',

'54',

'26',

'esempio2.json',

'lezione5.py',

'lezione5-ipython-console.html',

'3cime-rv.png',

'immagini.py',

'.pytest_cache',

'lezione7.py',

'files',

'lezione10.py',

'png.py',

'files.zip',

'lezione11-ipython-console.html',

'lezione7-ipython-console.html',

'3cime-tra.png',

'lezione3-ipython-console.html']


In [44]: os.listdir('/')

Out[44]:

['lost+found',

'dev',

'.cache',

'bin',

'tmp',

'srv',

'lib',

'mnt',

'lib64',

'boot',

'System Volume Information',

'run',

'@System.solv',

'var',

'proc',

'sbin',

'1',

'usr',

'sys',

'home',

'refind-0.11.4-1.x86_64.rpm',

'root',

'media',

'opt',

'etc']


In [45]: os.listdir()[2]

Out[45]: 'esempio.json'


In [46]: os.path.isdir(os.listdir()[2])

Out[46]: False


In [47]: ls

11/ lezione10.py

26/ lezione11-ipython-console.html

26.py lezione11.py

27/ lezione12-ipython-console.html

3ciime-rh.png lezione12.py

3cime-blur.png lezione13.py

3cime-bw.png lezione1-ipython-console.html

3cime-c1_2.png lezione1.py

3cime-c2.png lezione2-ipython-console-2.html

3cime-CCC.png lezione2-ipython-console.html

3cime-contrasto2.png lezione2.py

3cime-dx.png lezione3-ipython-console.html

3cime-filtro-grigio.png lezione3.py

3cime-lente0.75.png lezione4-ipython-console.html

3cime-lente2.png lezione4.py

3cime-negativo.png lezione5-ipython-console.html

3cime.png lezione5.py

3cime-rv.png lezione6-ipython-console.py

3cime-schiarita.png lezione6.py

3cime-tra.png lezione7-ipython-console.html

54/ lezione7.py

54.py lezione8-ipython-console.html

'ANALISI E PROGETTO.txt' lezione8.py

esempio2.json lezione9-ipython-console.html

esempio.json lezione9.py

'FILE E WEB.txt' paperino.txt

files/ png.py

files.zip __pycache__/

immagini.py rtrace.py


In [48]: os.path.isdir('files')

Out[48]: True


In [49]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [50]: lista_files('files')

files/testo.txt

files/holmes.txt

files/alice.txt

files/testo2.txt

files/words.py

files/results.txt

files/logo.png

files/log.log

files/frankenstein.txt

files/alice_it.txt

files/prince.txt


In [51]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [52]: lista_files_R('.')

./lezione9-ipython-console.html

./__pycache__/lezione2.cpython-37.pyc

./__pycache__/immagini.cpython-37.pyc

./__pycache__/lezione11.cpython-37.pyc

./__pycache__/rtrace.cpython-37.pyc

./__pycache__/png.cpython-37.pyc

./esempio.json

./3cime-CCC.png

./3cime.png

./lezione4.py

./lezione11.py

./11/__pycache__/program.cpython-37.pyc

./11/__pycache__/testlib.cpython-37.pyc

./11/exercise.json

./11/program.py

./11/solution.py

./11/ft10b.txt

./11/ft10c.txt

./11/testlib.py

./11/test.py

./11/11.py

./11/README.txt

./11/ft10a.txt

./3cime-negativo.png

./3cime-c1_2.png

./3cime-bw.png

./lezione2-ipython-console-2.html

./3cime-c2.png

./lezione12-ipython-console.html

./lezione2-ipython-console.html

./lezione13.py

./3cime-lente0.75.png

./3cime-lente2.png

./3cime-contrasto2.png

./lezione6-ipython-console.py

./lezione8.py

./lezione8-ipython-console.html

./27/__pycache__/program.cpython-37.pyc

./27/__pycache__/testlib.cpython-37.pyc

./27/exercise.json

./27/program.py

./27/solution.py

./27/27.py

./27/testlib.py

./27/test.py

./27/README.txt

./lezione12.py

./ANALISI E PROGETTO.txt

./3cime-filtro-grigio.png

./26.py

./3ciime-rh.png

./paperino.txt

./rtrace.py

./lezione1.py

./lezione6.py

./lezione1-ipython-console.html

./lezione3.py

./lezione4-ipython-console.html

./lezione9.py

./lezione2.py

./3cime-dx.png

./54.py

./3cime-blur.png

./FILE E WEB.txt

./3cime-schiarita.png

./54/__pycache__/program.cpython-37.pyc

./54/__pycache__/testlib.cpython-37.pyc

./54/exercise.json

./54/program.py

./54/solution.py

./54/testlib.py

./54/test.py

./54/README.txt

./26/__pycache__/program.cpython-37.pyc

./26/__pycache__/testlib.cpython-37.pyc

./26/exercise.json

./26/program.py

./26/solution.py

./26/testlib.py

./26/test.py

./26/README.txt

./esempio2.json

./lezione5.py

./lezione5-ipython-console.html

./3cime-rv.png

./immagini.py

./.pytest_cache/CACHEDIR.TAG

./.pytest_cache/v/cache/nodeids

./.pytest_cache/v/cache/stepwise

./.pytest_cache/README.md

./.pytest_cache/.gitignore

./lezione7.py

./files/testo.txt

./files/holmes.txt

./files/alice.txt

./files/testo2.txt

./files/words.py

./files/results.txt

./files/logo.png

./files/log.log

./files/frankenstein.txt

./files/alice_it.txt

./files/prince.txt

./lezione10.py

./png.py

./files.zip

./lezione11-ipython-console.html

./lezione7-ipython-console.html

./3cime-tra.png

./lezione3-ipython-console.html


In [52]:


In [53]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [54]: elenca_files_e_dir('files')

os.stat_result(st_mode=33204, st_ino=14295621, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=146, st_atime=1571737540, st_mtime=1534521093, st_ctime=1571687227)

os.stat_result(st_mode=33188, st_ino=14295623, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=594933, st_atime=1571737539, st_mtime=1350400680, st_ctime=1571687227)

os.stat_result(st_mode=33188, st_ino=14295624, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=167517, st_atime=1571736361, st_mtime=1350400680, st_ctime=1571687227)

os.stat_result(st_mode=33204, st_ino=14295626, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=19, st_atime=1571737540, st_mtime=1538399208, st_ctime=1571687227)

os.stat_result(st_mode=33204, st_ino=14295627, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=1010, st_atime=1571687497, st_mtime=1534540261, st_ctime=1571687227)

os.stat_result(st_mode=33188, st_ino=14295628, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=272, st_atime=1571737540, st_mtime=1350476460, st_ctime=1571687227)

os.stat_result(st_mode=33204, st_ino=14295629, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=10102, st_atime=1571737540, st_mtime=1534541928, st_ctime=1571687227)

os.stat_result(st_mode=33204, st_ino=14295630, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=144, st_atime=1571687233, st_mtime=1534525205, st_ctime=1571687227)

os.stat_result(st_mode=33188, st_ino=14295681, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=448684, st_atime=1571737539, st_mtime=1350459780, st_ctime=1571687227)

os.stat_result(st_mode=33204, st_ino=14295694, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=144377, st_atime=1571737539, st_mtime=1534540907, st_ctime=1571687227)

os.stat_result(st_mode=33188, st_ino=14295695, st_dev=2051, st_nlink=1, st_uid=1000, st_gid=1000, st_size=305864, st_atime=1571737540, st_mtime=1350400680, st_ctime=1571687227)

Out[54]: {}


In [55]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [56]: elenca_files_e_dir('files')

Out[56]:

{'testo.txt': 146,

'holmes.txt': 594933,

'alice.txt': 167517,

'testo2.txt': 19,

'words.py': 1010,

'results.txt': 272,

'logo.png': 10102,

'log.log': 144,

'frankenstein.txt': 448684,

'alice_it.txt': 144377,

'prince.txt': 305864}


In [57]: elenca_files_e_dir('.')

Out[57]:

{'lezione9-ipython-console.html': 114502,

'__pycache__': {'lezione2.cpython-37.pyc': 624,

'immagini.cpython-37.pyc': 1225,

'lezione11.cpython-37.pyc': 4643,

'rtrace.cpython-37.pyc': 1642,

'png.cpython-37.pyc': 71037},

'esempio.json': 196,

'3cime-CCC.png': 98752,

'3cime.png': 86614,

'lezione4.py': 3793,

'lezione11.py': 3457,

'11': {'__pycache__': {'program.cpython-37.pyc': 2122,

'testlib.cpython-37.pyc': 5330},

'exercise.json': 1836,

'program.py': 2665,

'solution.py': 584,

'ft10b.txt': 132,

'ft10c.txt': 85,

'testlib.py': 4336,

'test.py': 1716,

'11.py': 2665,

'README.txt': 1930,

'ft10a.txt': 80},

'3cime-negativo.png': 113107,

'3cime-c1_2.png': 91055,

'3cime-bw.png': 49777,

'lezione2-ipython-console-2.html': 13704,

'3cime-c2.png': 80938,

'lezione12-ipython-console.html': 177766,

'lezione2-ipython-console.html': 41677,

'lezione13.py': 3171,

'3cime-lente0.75.png': 108148,

'3cime-lente2.png': 110954,

'3cime-contrasto2.png': 80938,

'lezione6-ipython-console.py': 2941,

'lezione8.py': 2884,

'lezione8-ipython-console.html': 83495,

'27': {'__pycache__': {'program.cpython-37.pyc': 2248,

'testlib.cpython-37.pyc': 5330},

'exercise.json': 1431,

'program.py': 2994,

'solution.py': 266,

'27.py': 2994,

'testlib.py': 4336,

'test.py': 1664,

'README.txt': 1930},

'lezione12.py': 1911,

'ANALISI E PROGETTO.txt': 28194,

'3cime-filtro-grigio.png': 49777,

'26.py': 1723,

'3ciime-rh.png': 113023,

'paperino.txt': 43,

'rtrace.py': 1563,

'lezione1.py': 375,

'lezione6.py': 3971,

'lezione1-ipython-console.html': 85276,

'lezione3.py': 660,

'lezione4-ipython-console.html': 21695,

'lezione9.py': 617,

'lezione2.py': 2944,

'3cime-dx.png': 119602,

'54.py': 2310,

'3cime-blur.png': 116340,

'FILE E WEB.txt': 20780,

'3cime-schiarita.png': 109315,

'54': {'__pycache__': {'program.cpython-37.pyc': 1919,

'testlib.cpython-37.pyc': 5330},

'exercise.json': 1091,

'program.py': 2310,

'solution.py': 247,

'testlib.py': 4336,

'test.py': 1369,

'README.txt': 1930},

'26': {'__pycache__': {'program.cpython-37.pyc': 1932,

'testlib.cpython-37.pyc': 5330},

'exercise.json': 1276,

'program.py': 1723,

'solution.py': 112,

'testlib.py': 4336,

'test.py': 1797,

'README.txt': 1930},

'esempio2.json': 2483,

'lezione5.py': 1082,

'lezione5-ipython-console.html': 106919,

'3cime-rv.png': 112810,

'immagini.py': 979,

'.pytest_cache': {'CACHEDIR.TAG': 194,

'v': {'cache': {'nodeids': 2, 'stepwise': 2}},

'README.md': 295,

'.gitignore': 36},

'lezione7.py': 2079,

'files': {'testo.txt': 146,

'holmes.txt': 594933,

'alice.txt': 167517,

'testo2.txt': 19,

'words.py': 1010,

'results.txt': 272,

'logo.png': 10102,

'log.log': 144,

'frankenstein.txt': 448684,

'alice_it.txt': 144377,

'prince.txt': 305864},

'lezione10.py': 3971,

'png.py': 100229,

'files.zip': 632703,

'lezione11-ipython-console.html': 333887,

'lezione7-ipython-console.html': 210170,

'3cime-tra.png': 119685,

'lezione3-ipython-console.html': 86545}


In [58]: DIZ = elenca_files_e_dir('.')


In [59]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [60]: dimensioni_dir('.')

Traceback (most recent call last):


File "<ipython-input-60-7bc695ebec68>", line 1, in <module>

dimensioni_dir('.')


File "/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py", line 120, in dimensioni_dir

dim += elenca_files_e_dir(fullname)


TypeError: unsupported operand type(s) for +=: 'int' and 'dict'



In [61]:


In [61]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [62]: dimensioni_dir('.')

Out[62]: 5498203


In [63]: dimensioni_dir('files')

Out[63]: 1673068


In [64]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [65]: nodo1 = NodoBinario(10)


In [66]: nodo1

Out[66]: <__main__.NodoBinario at 0x7fa22cb2fda0>


In [67]: print(nodo1)

Traceback (most recent call last):


File "<ipython-input-67-b974ede6a7b7>", line 1, in <module>

print(nodo1)


File "/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py", line 138, in __str__

"""


AttributeError: 'NodoBinario' object has no attribute 'SX'



In [68]:


In [68]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [69]: nodo1 = NodoBinario(10)


In [70]: nodo1

Out[70]: <__main__.NodoBinario at 0x7fa22ca90588>


In [71]: print(nodo1)


10

None

None



In [72]: nodo2 = NodoBinario(20,nodo1)


In [73]: print(nodo2)


20


10

None

None


None



In [74]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace

Traceback (most recent call last):


File "/opt/anaconda3/envs/F19/lib/python3.7/site-packages/IPython/core/interactiveshell.py", line 3326, in run_code

exec(code_obj, self.user_global_ns, self.user_ns)


File "<ipython-input-74-b3910f5f04bd>", line 1, in <module>

runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')


File "/opt/anaconda3/envs/F19/lib/python3.7/site-packages/spyder_kernels/customize/spydercustomize.py", line 827, in runfile

execfile(filename, namespace)


File "/opt/anaconda3/envs/F19/lib/python3.7/site-packages/spyder_kernels/customize/spydercustomize.py", line 110, in execfile

exec(compile(f.read(), filename, 'exec'), namespace)


File "/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py", line 134

risultato = f"{'\t'*livello}{self.valore}"

^

SyntaxError: f-string expression part cannot include a backslash



In [75]:


In [75]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Traceback (most recent call last):


File "/opt/anaconda3/envs/F19/lib/python3.7/site-packages/IPython/core/interactiveshell.py", line 3326, in run_code

exec(code_obj, self.user_global_ns, self.user_ns)


File "<ipython-input-75-b3910f5f04bd>", line 1, in <module>

runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')


File "/opt/anaconda3/envs/F19/lib/python3.7/site-packages/spyder_kernels/customize/spydercustomize.py", line 827, in runfile

execfile(filename, namespace)


File "/opt/anaconda3/envs/F19/lib/python3.7/site-packages/spyder_kernels/customize/spydercustomize.py", line 110, in execfile

exec(compile(f.read(), filename, 'exec'), namespace)


File "/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py", line 134

risultato = f"{'\t'*livello}{self.valore}"

^

SyntaxError: f-string expression part cannot include a backslash



In [76]:


In [76]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')


In [77]: nodo1 = NodoBinario(10)


In [78]: print(nodo1)

10


In [79]: nodo2 = NodoBinario(20,nodo1)


In [80]: print(nodo2)

20

10


In [81]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [82]: nodo1 = NodoBinario(10)


In [83]: nodo2 = NodoBinario(20,nodo1)


In [84]: nodo3 = NodoBinario(30, nodo2)


In [85]: print(nodo3)

30

20

10


In [86]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [87]: nodo3.altezza()

Traceback (most recent call last):


File "<ipython-input-87-dd064861196b>", line 1, in <module>

nodo3.altezza()


AttributeError: 'NodoBinario' object has no attribute 'altezza'



In [88]:


In [88]: nodo1 = NodoBinario(10)


In [89]: nodo1.altezza()

Out[89]: 1


In [90]: nodo2 = NodoBinario(20)


In [91]: nodo3 = NodoBinario(30, nodo2, nodo1)


In [92]: nodo2.altezza()

Out[92]: 1


In [93]: nodo3.altezza()

Traceback (most recent call last):


File "<ipython-input-93-dd064861196b>", line 1, in <module>

nodo3.altezza()


File "/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py", line 147, in altezza

hd = self.sd.altezza()


AttributeError: 'NodoBinario' object has no attribute 'sd'



In [94]:


In [94]: runfile('/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni/lezione13.py', wdir='/home/andrea/Documents/Uni/Didattica/Prog1/2019-20/Lezioni')

Reloaded modules: rtrace


In [95]: nodo1 = NodoBinario(10)


In [96]: nodo2 = NodoBinario(20)


In [97]: nodo3 = NodoBinario(30, nodo2, nodo1)


In [98]: nodo3.altezza()

Out[98]: 2


In [99]: nodo4 = NodoBinario(40, DX=nodo3)


In [100]: nodo4.altezza()

Out[100]: 3


In [101]: