Função de módulo importado não funciona

1. Função de módulo importado não funciona

Leandro Israel
leandroalcantara

(usa Ubuntu)

Enviado em 01/11/2018 - 12:33h

Olá. Eu tenho o seguinte módulo com apenas esta função no código:
import sys

# função para imprimir na tela uma lista aninhada
def print_lol(the_list, ident=False, level=0, arq=sys.stdout):
# the_list recebe a lista
# ident para o usuário informar se haverá ou não identação
# level = 0 inicia a identação com um valor padrão

# laço para leitura dos itens na lista
for each_item in the_list:
# teste para validar o tipo do item que está sendo iterado
if isinstance(each_item, list):
# caso o item seja uma lista, recursivamente a função é chamada
# incremento no level para que haja a identação
print_lol(each_item, ident, level+1, arq)
# caso o item não seja uma lista
else:
# testa a identação
if ident:
print("\t" * level, end="", file = arq)
print(each_item, file=arq)


e eu chamo o módulo neste outro código:

import nester
man = []
other = []

try:
data = open('sketch.txt')

for each_line in data:
try:
(role, line_spoken) = each_line.split(':', 1)
line_spoken = line_spoken.strip()
if role == 'Man':
man.append(line_spoken)
elif role == 'Other Man':
other.append(line_spoken)
# print(role, ' said: ', line_spoken, end='')
except ValueError:
pass

data.close()
except IOError:
print('The data file is missing!')

try:
with open('man_data.txt', 'w') as man_file:
nester.print_lol(man, arq = man_file)
with open('other_data.txt', 'w') as other_file:
nester.print_lol(other, arq = other_file)
except IOError as err:
print('File error: ' + st(err))


porém quando tento executar aparece:
line 59, in <module>
nester.print_lol(man, arq = man_file)
TypeError: print_lol() got an unexpected keyword argument 'arq'


aonde está o erro? Praticamente refiz tudo, e ainda assim não funcionou.


  






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts