Python E04
Python E04
1. Implementar uma classe Animal com os atributos: nome, especie, gênero, peso, altura e idade. O
objeto derivado desta classe deverá salvar seu estado em arquivo com um método chamado “salvar”
e recarregar o estado em um método chamado “desfazer”.
Solução:
import pickle
class Animal(object):
def __repr__(self):
dic_attrs = {}
for attr in [Link]:
dic_attrs[attr] = getattr(self, attr)
return 'Animal: %s' % str(dic_attrs)
def salvar(self):
dic_attrs = {}
for attr in [Link]:
dic_attrs[attr] = getattr(self, attr)
[Link](dic_attrs, file('[Link]', 'w'))
def desfazer(self):
attrs = [Link](file('[Link]'))
for attr in attrs:
setattr(self, attr, attrs[attr])
[Link]()
[Link] = 5
print gato
[Link]()
print gato
2. Implementar uma função que formate uma lista de tuplas como tabela HTML.
Solução:
import StringIO
def table_format(dataset):
out = [Link]()
[Link]('<table>')
[Link]('</table>')
[Link](0)
return [Link]()
Solução:
3. Implementar uma aplicação Web com uma saudação dependente do horário (exemplos: “Bom
dia, são 09:00.”, “Boa tarde, são 13:00.” e “Boa noite, são 23:00.”)
Solução:
#!/usr/bin/env python2.4
# -*- coding: latin1 -*-
import time
import cherrypy
class Root(object):
@[Link]
def index(self):
[Link](Root())
4. Implementar uma aplicação Web com um formulário que receba expressões Python e retorne a
expressão com seu resultado.
Solução:
import traceback
import cherrypy
class Root(object):
template = '''
<html><body>
<form action="/">
<input type="text" name="exp" value="%s" />
<input type="submit" value="enviar">
<pre>%s</pre>
</body></html>'''
@[Link]
def index(self, exp=''):
out = ''
if exp:
try:
out = eval(exp)
except:
out = traceback.format_exc()
[Link](Root())