Autor
|
Tema: matrices en python... (Leído 17,911 veces)
|
BloodyDark
Desconectado
Mensajes: 3
|
si bien soy demasiado novato... esta vez he buscado un poco y me encuentro que las matrices se definen con listas de igual numero de elementos...
bien... aqui viene mi duda... como haría para que en python me capturase un valor introducido por el usuario para convertirlo en una matriz...
y otra duda.. como sumar matrices? xD
lo se que suena soso y todo eso... pero la verdad ando con poca disposición y con pocos recursos para conseguir informacion de varias fuentes...
so... algun alma piadosa puede ayudarme un poco? xD
danke! ^^
|
|
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
¿Con poca disposición? No sé como se manejen las matrices en python, pero para sumar basta con hacer algo así: for(i = 0; i < filas; i++) for(j = 0; j < columnas; j++) sumMatrix[i][j] = matrix[i][j] + matrix_2[i][j]; Mira así, a ver si lo entiendes: (%i1) A : matrix([1,2,3],[0,1,4]); [ 1 2 3 ] (%o1) [ ] [ 0 1 4 ] (%i2) B : matrix([2, 3, 0], [-1, 2, 5]); [ 2 3 0 ] (%o2) [ ] [ - 1 2 5 ] (%i3) A + B; [ 3 5 3 ] (%o3) [ ] [ - 1 3 9 ]
Lo mismo para la resta.
|
|
|
En línea
|
|
|
|
^Tifa^
Desconectado
Mensajes: 2.804
|
Para tu primera duda, convertir una frase insertada en un arreglo te puede servir split mensaje=raw_input("Inserte una Frase :: ") respuesta = mensaje.split(",") for a in range(len(respuesta)): print("El indice numero %d" % a) print("Es %s" % respuesta[a])
Donde el delimitador para saber donde comenzar a dividir la palabra insertada por ti, es una coma (,) por lo cual en ese ejemplo para comenzar a dividir lo insertado en trozos deberias insertar la frase asi: manzana, pera, uva para que el indice 0 sea manzana, el indice 1 uva, etc. Ahora puedes sustituir la coma(,) del split por lo que tu quieras.. espacio en blanco, punto, loquesea. Sobre tu segunda pregunta (suma matricez) matriz1 = [1,2,3] matriz2 = [4,5,6] for a in range(len(matriz1)): for b in range(len(matriz2)): print("La suma es ", (matriz1[a]+matriz2[b]))
El resultado de lo anterior es: bash-3.1$ python pyton.py ('La suma es ', 5) ('La suma es ', 6) ('La suma es ', 7) ('La suma es ', 6) ('La suma es ', 7) ('La suma es ', 8) ('La suma es ', 7) ('La suma es ', 8) ('La suma es ', 9)
Si fuera con matrices de 2 dimensiones seria: matriz1 = [[1,2,3], [4,5,6]] matriz2 = [[4,5,6], [8,9,10]] for a in range(len(matriz1)): for b in range(len(matriz2)): print("La suma es ", (matriz1[a][b]+matriz2[b][a]))
Y el resultado de lo anterior es: bash-3.1$ python pyton.py ('La suma es ', 5) ('La suma es ', 10) ('La suma es ', 9) ('La suma es ', 14)
Nunca he sido buena sumando matricez lol pero por ahi va la idea... Leo podra ayudar.
|
|
« Última modificación: 1 Mayo 2010, 06:14 am por ^Tifa^ »
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Yo no sé python, pero la suma de matrices se hace así: suma[i][j] = A[i][j] + B[i][j] Se crea una matriz de dimensiones n x m. Sólo hay que pasarlo a python. Si supiera manejar bien las tuplas lo haría yo mismo, pero me da pereza recordar. Saludos.
|
|
« Última modificación: 1 Mayo 2010, 06:35 am por Leo Gutiérrez. »
|
En línea
|
|
|
|
^Tifa^
Desconectado
Mensajes: 2.804
|
Yo no sé python, pero la suma de matrices se hace así: suma[i][j] = A[i][j] + B[i][j] Y yo no me gusta ni quiero recordar como sumar matricez odio los numeros como el perro callejero al agua y el jabon. En Python las matrices de 2 dimensiones se declaran: matriz1 = [[1,2,3], [4,5,6]] matriz2 = [[4,5,6], [8,9,10]]
Puse el ejempliyo arriba, el problema es la suma... aunque creo lo esta haciendo por el resultado que lanzo...
|
|
|
En línea
|
|
|
|
leogtz
. . .. ... ..... ........ ............. .....................
Colaborador
Desconectado
Mensajes: 3.069
/^$/
|
Okay, gracias por el dato, entonces la suma es así en python: #!/usr/bin/python matriz = [[1, 2, 3], [4, 5, 6]] matriz_2 = [[1, 2, 3], [4, 5, 6]] suma = [[0,0,0], [0,0,0]] for i in range(2): for j in range(3): suma[i][j] = matriz[i][j] + matriz_2[i][j] print "A + B = ", suma
[code]leo@lein:~/Escritorio$ python py.py A + B = [[2, 4, 6], [8, 10, 12]] leo@lein:~/Escritorio$
(%i1) A : matrix([1,2,3],[4,5,6]); [ 1 2 3 ] (%o1) [ ] [ 4 5 6 ] (%i2) B : matrix([1,2,3],[4,5,6]); [ 1 2 3 ] (%o2) [ ] [ 4 5 6 ] (%i3) A + B; [ 2 4 6 ] (%o3) [ ] [ 8 10 12 ] (%i4)
Saludos.[/code]
|
|
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
Filas de Matrices en Python
Scripting
|
AgnesBlack
|
0
|
2,742
|
16 Octubre 2011, 01:51 am
por AgnesBlack
|
|
|
{Python 3.4} Problema con programa matrices
Scripting
|
dj28
|
2
|
3,669
|
7 Julio 2014, 00:21 am
por Almapa
|
|
|
Ayuda: Multiplicación de matrices - Python
Ejercicios
|
Itzhack
|
1
|
12,439
|
4 Noviembre 2014, 01:29 am
por Minusfour_cierralo_o_baneamefull
|
|
|
Python -- Creación de Matrices
Programación General
|
scyssor91
|
0
|
2,008
|
13 Abril 2016, 20:17 pm
por scyssor91
|
|
|
matrices en python
Scripting
|
py.cba
|
1
|
2,344
|
24 Noviembre 2016, 04:22 am
por Once
|
|