Comentários do Blog

  1. Avatar de Magnun
    Taí uma boa pergunta... Ainda n testei o novo Python pra saber :D
  2. Avatar de Magnun
    Também está correto. Mas como estou abordando o Python para iniciantes na programação achei melhor deixar explícito essa conversão.
  3. Avatar de Magnun
    Muito bom!
  4. Avatar de fabraga
    Não há como esse resultado sair ordenado? Tipo:

    O aluno aluno1 foi...
    O aluno aluno2 foi...
    O aluno aluno3 foi...
    O aluno aluno4 foi...
    etc.

    ??
  5. Avatar de fabraga
    Belewwwza!
  6. Avatar de fabraga
    Na versão do Python que eu uso sou obrigado a usar a função "print()", que vai para a linha de baixo automaticamente após sua execução. Tem como evitar que isso aconteça? Porque eu gostaria que continuasse na mesma linha quando eu fosse adicionar uma informação como "Aluno reprovado por falta e por média" mas infelizmente não consigo fazer isso. Segue minha solução para os exercícios:

    Código PHP:
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-

    faltas = {'aluno1':2'aluno2':3'aluno3':7'aluno4':11'aluno5':0'aluno6':10}
    notas = {'aluno1':[5,6,5], 'aluno2':[7,8,6], 'aluno3':[6,6,8], 'aluno4':[5,9,8], 'aluno5':[5,6,3], 'aluno6':[6,6,6]}

    for 
    aluno in notas
        if 
    faltas[aluno]>10:
            print(
    aluno,"reprovado por número de faltas")
        if (
    sum(notas[aluno]) / len(notas[aluno])) <6:
            print(
    aluno,"reprovado por média"
    Por algum motivo o resultado também está saindo fora de ordem. Você saberia me ajudar a explicar por quê isso acontece?
    Código :
    Python 3.2 (r32:88445, Feb 20 2011, 21:30:00) [MSC v.1500 64 bit (AMD64)] on win32
    Type "copyright", "credits" or "license()" for more information.
    >>> ================================ RESTART ================================
    >>> 
    aluno1 reprovado por média
    aluno5 reprovado por média
    aluno4 reprovado por número de faltas
    >>>
    Valeu!
    Atualizado 08-06-2011 em 14:28 por fabraga
  7. Avatar de fabraga
    Citação Postado originalmente por Magnun
    Correto silvanofideles, não é necessário.
    Acho que era mais ou menos isso que o "silvanofideles" comentou que eu ia perguntar - com relação ao uso do "float()". O programa ficaria mais simples (e relativamente mais rápido, exigindo ao processador uma operação a menos) se ao invés de usar o float() eu apenas declaresse a variável com 0.00 ??

    Código PHP:
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-

    # Media de notas dos alunos

    alunos={'Fulano':[6,7,5,2],'Sicrano':[7,8,9,8],'Beltrano':[10,9,10,10]}

    m_turma 0.00 
    for aluno,notas in alunos.items():
        
    media 0.00 
        
    for nota in notas:
            
    media += nota
        media 
    /= len(notas)
        
    m_turma += media 
        
    print("Nome:",aluno,"\t- Média: %.2f"%media,"(Reprovado)" if media<else "")

    m_turma /= len(alunos)
    print(
    "\nMédia da turma: %.2f"%m_turma
    Obrigado!
  8. Avatar de fabraga
    Estudei a solução do cleoson e percebi que poderia fazer umas melhorias reduzindo o número de variáveis e movendo algumas instruções para fora do segundo "for" a fim de acelerar a execução do programa. Veja como ficou:


    Código PHP:
    #!/usr/bin/env python
    # -*- coding: utf-8 -*-

    # Media de notas dos alunos

    alunos={'fulano':[6,7,5,2],'sicrano':[7,8,9,8],'beltrano':[10,9,10,10]}

    m_turman_alunos 0.000

    for aluno in alunos.items():
        
    soma 0.00
        n_alunos 
    += 1
        
    for nota in aluno[1]:
            
    notas len(aluno[1])
            
    soma += nota
        media 
    soma notas
        status 
    'Aprovado!' if media >= else 'Reprovado!'
        
    m_turma += media
        
    print('Nome:',aluno[0],'\t- Média:',media,'\t- Situação:',status)

    print(
    '\nA média da turma é: %.2f'%(m_turma n_alunos)) 
    Valeu cleoson! Se vc não tivesse feito a sua versão eu não saberia nem como fazer a minha porque ainda não sei quase nada de Python. ^^
    Atualizado 08-06-2011 em 11:59 por fabraga
  9. Avatar de Magnun
    Por algum motivo que desconheço a seguinte linha está dando erro
    >>> for album,ano in smashing_pumpkins.items():

    troque todas as ocorrências dessa linha pelas siguintes:
    >>> smash_albuns = smashing_pumpkins.items()
    >>> for album,ano in smash_albuns:

    dai segue normalmente.
    Até mais...
  10. Avatar de fabraga
    Comigo começou a dar erro a partir de certo ponto:

    Código PHP:
    >>> smashing_pumpkins.items()
    dict_items([('Gish'1991), ('Mellon Collie'1995), ('Siamese Dream'1993)])
    >>> for 
    items in smashing_pumpkings.items():
        print(
    item)
        
    Traceback (most recent call last):
      
    File "<pyshell#29>"line 1in <module>
        for 
    items in smashing_pumpkings.items():
    NameErrorname 'smashing_pumpkings' is not defined
    >>> smashing_pumpkins = {'Gish':1991'Siamese Dream':1993'Mellon Collie':1995}
    >>> for 
    items in smashing_pumpkings.items():
        print(
    items)
        
    Traceback (most recent call last):
      
    File "<pyshell#33>"line 1in <module>
        for 
    items in smashing_pumpkings.items():
    NameErrorname 'smashing_pumpkings' is not defined
    >>> smashing_pumpkins = {'Gish':1991'Siamese Dream':1993'Mellon Collie':1995}
    >>> for 
    album,ano in smashing_pumpkings.items():
        print(
    "O album",album,"foi lançado em",ano)

        
    Traceback (most recent call last):
      
    File "<pyshell#37>"line 1in <module>
        for 
    album,ano in smashing_pumpkings.items():
    NameErrorname 'smashing_pumpkings' is not defined 
    Sei que é por causa da versão do Python (3.2) que eu uso, mas vc já saberia dizer quais mudanças eu deveria fazer para fazer esses códigos funcionarem e assim poder seguir em frente com as aulas antigas mesmo que são só as que tenho por enquanto? Obrigado!