Utilizando a biblioteca Numpy
Publicado por João Carlos abreu Junior (última atualização em 14/09/2009)
[ Hits: 10.497 ]
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]
Virus, trojan, sei lá o que é isso, PARTE II
Script para obter um wallpaper de como está o globo em tempo real
Resolução de problemas por meio de buscas - Labirinto (Inteligência Artificial)
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Vou voltar moderar conteúdos de Dicas e Artigos (1)
SysAdmin ou DevOps: Qual curso inicial pra essa área? (3)
É cada coisa que me aparece! - não é só 3% (3)
Melhorando a precisão de valores flutuantes em python[AJUDA] (5)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta