Utilizando a biblioteca Numpy
Publicado por João Carlos abreu Junior (última atualização em 14/09/2009)
[ Hits: 10.341 ]
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]
Botnet em Python sem segredos!
Nenhum comentário foi encontrado.
Atenção a quem posta conteúdo de dicas, scripts e tal (1)
Manutenção de sistemas Linux Debian e derivados com apt-get, apt, aptitude e dpkg
Melhorando o tempo de boot do Fedora e outras distribuições
Como instalar as extensões Dash To Dock e Hide Top Bar no Gnome 45/46
Como Atualizar Fedora 39 para 40
Instalar Google Chrome no Debian e derivados
Consertando o erro do Sushi e Wayland no Opensuse Leap 15
Instalar a última versão do PostgreSQL no Lunix mantendo atualizado
Flathub na sua distribuição Linux e comandos básicos de gerenciamento
erro ao clonar repo github (5)
Problema Envio email GLPI Versao 10.0.15 (1)
Como adicionar módulo de saúde da bateria dos notebooks Acer ao kernel... (25)
[Shell Script] Script para desinstalar pacotes desnecessários no OpenSuse
[Shell Script] Script para criar certificados de forma automatizada no OpenVpn
[Shell Script] Conversor de vídeo com opção de legenda
[C/C++] BRT - Bulk Renaming Tool
[Shell Script] Criação de Usuarios , Grupo e instalação do servidor de arquivos samba