Utilizando a biblioteca Numpy
Publicado por João Carlos abreu Junior (última atualização em 14/09/2009)
[ Hits: 10.767 ]
Esse script demonstra como utilizar a biblioteca Numpy de forma eficiente para se trabalhar com vetores e matrizes numéricas.
# -*- coding: utf-8 -*- from random import random import numpy def ordenacao(dados): valor1 = dados[:,:,2]#Valor1 recebe todos os valores de dados[y,x,2] valor1 = valor1.reshape(6000*6000)#Transformando valor1 em um vetor de tamanho 6000*6000 valor2 = dados[:,:,3]#Valor2 recebe todos os valores de dados[y,x,3] valor2 = valor2.reshape(6000*6000)#Transformando valor2 em um vetor de tamanho 6000*6000 indice = numpy.lexsort((valor2,valor1)) # Ordenando de acordo com valor1 e valor2 return indice dados = numpy.arange(6000 * 6000 * 4)#Alocação da Memória dados = dados.reshape((6000,6000,4))# Transforma a memória alocada em uma Matriz 6000X6000, #onde cada posição guarda 4 números #preencimento da memória for y in xrange(0,6000): for x in xrange(0,6000): dados[y,x,0] = y dados[y,x,1] = x dados[y,x,2] = -int(random()*100)#gerando números inteiros negativos. Coloquei o número negativo #pois ordenar números inteiros na forma decrescente é o mesmo que ordenar esses mesmo números # com sinal trocado na forma crescente dados[y,x,3] = int(random()*100)#gerando números inteiros. print dados indice = ordenacao(dados) dados = dados.reshape((6000 * 6000,4))#Transformando dados em um vetor de tamanho 6000*6000 #impressão ordenada for linha in xrange(0,6000*6000): print dados[indice[linha],0],dados[indice[linha],1],dados[indice[linha],2],dados[indice[linha],3]
PYCalculator 1.0 - Calculadora no Python
Jogo da forca criado em Python
Nenhum comentário foi encontrado.
Atualizações de Apps, Desktop e Kernel agitam o ecossistema Linux nesta terça-feira
Miyoo Mini Plus + Onion OS (Linux)
IA local no bolso, novo visual no Raspberry Pi OS e mais destaques do software livre
Kernel turbinado, compatibilidade em alta e debate sobre sustentabilidade: o dia no mundo Linux
Kernel turbinado e GNOME 49 dominam o giro do dia no mundo Linux
Adicionando o repositório backports no Debian 13 Trixie
Como definir um IP estático no Linux Debian
Como listar os arquivos em "bloquin... [RESOLVIDO] (5)
Como colocar atalho para uma pasta na área de trabalho do Ubuntu 24.04... (1)
Como vencer a procrastinação? (8)
Adicional de convivdado em linux somente linha de comando (3)