elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.

 

 


Tema destacado: Estamos en la red social de Mastodon


+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting
| | |-+  Python Ordenar diccionarios ¿listas?
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Python Ordenar diccionarios ¿listas?  (Leído 2,183 veces)
metalost

Desconectado Desconectado

Mensajes: 10


Ver Perfil
Python Ordenar diccionarios ¿listas?
« en: 26 Febrero 2018, 01:01 am »

Código
  1. #-*-coding:utf-8-*-
  2. import time
  3. id1=0
  4. alumnos={}
  5.  
  6. def agregar():
  7. global id1,alumnos
  8. id1+=1
  9. nomb=raw_input("Ingrese el nombre del alumno n"+str(id1)+": ")
  10. ntot=0.0
  11. notasA=[]
  12. for x1 in range(0,4):
  13. notas1=int(input("Ingrese nota n"+str(x1+1)+": "))
  14. ntot+=notas1
  15. notasA.append(notas1)
  16. ntot=(ntot/4)
  17. alumnos[id1]=[nomb,ntot,notasA]
  18.  
  19. def ordenar():
  20. global alumnos
  21. print alumnos.sort()
  22.  
  23. def consultar(alumnos):
  24. for x in alumnos:
  25. print "N"+str(x),"Nombre: "+alumnos[x][0],"Promedio: "+str(alumnos[x][1])
  26.  
  27. while True:
  28. print"""
  29.  
  30. ############# Opcion 1: Agregar     #############
  31. ############# Opcion 2: Consultar   #############
  32. ############# Opcion 3: Cerrar      #############
  33. """
  34. opc=int(input("Elija la opcion que desea: "))
  35.  
  36. if opc==1:
  37. agregar()
  38. elif opc==2:
  39. ordenar()
  40. consultar(alumnos)
  41. elif opc==3:
  42. print alumnos
  43. break
  44. else:
  45. print ""
  46. print ""
  47. print "Opcion Invalida por favor vuelva a intentarlo cuando salga la pantalla"
  48. time.sleep(3)
  49. print ""
  50. print ""
  51.  


Crei que con el .sort podria hacerlo, pero... Que podria aplicar o hacer para que pueda ordenar todos los datos segun por ejemplo el promedio


En línea

Yidu

Desconectado Desconectado

Mensajes: 133


Ver Perfil
Re: Python Ordenar diccionarios ¿listas?
« Respuesta #1 en: 27 Febrero 2018, 18:24 pm »

Buenas,

Yo probaria a usar el modulo collections. Este ya viene incluido con Python. Para un script que estaba haciendo tambien necesitaba ordenar un diccionario. Pero creo que no se puede. Algo parecido pasa con los conjuntos (sets). En todo caso, al ordenar un diccionario, te devuelve en una tupla o lista. Aunque mejor que pruebes con el enlace que te paso. Ahi te lo explican mejor. Un saludo!

http://python-para-impacientes.blogspot.com.es/2015/04/con-ordereddict-el-orden-ha-llegado.html


En línea

Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Minituto "Comando para ordenar diccionarios de passwors"
Hacking
DoNPiNPoN 0 2,358 Último mensaje 23 Febrero 2011, 11:42 am
por DoNPiNPoN
Python diccionarios
Scripting
Joe Fraddy 1 3,066 Último mensaje 20 Enero 2015, 21:29 pm
por SrCooper
Qué son y como usar los diccionarios en python
Scripting
987123564 9 4,693 Último mensaje 15 Agosto 2016, 04:52 am
por engel lex
duda en el manejo de diccionarios python
Scripting
crosvid 5 2,284 Último mensaje 6 Abril 2017, 18:52 pm
por crosvid
Como puedo cambiar los diccionarios por listas en este programa
Dudas Generales
Skewer 0 2,447 Último mensaje 26 Febrero 2020, 00:54 am
por Skewer
WAP2 - Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines