DGmike

DGmike

Calma! não entre em pânico! Amanhã (talvez) tem novo post…

Você está aqui: dgmike » Programação » python

  • Home
  • Guia Rápido jQuery
  • Códigos prontos
    • PHP: Função __auloload()
    • Classe sqlsimples e sql – PHP
    • Bancos, bancos e mais bancos…
  • PagSeguro
  • Artigos
    • JavaScript (parte 1)
  • Quem é dgmike?

O PagSeguro mudou a URL de retorno automático, e agora?

Posted in Chrome, Cotidiano, Firefox, Internet Explorer, Navegadores, Programação, Semântica, Tecnologia, Trabalho, Tutorial, eventos, jQuery, javascript, pagseguro, php, plugin, python, yui by DGmike
Nov 02 2009
TrackBack Address.

Nesta sexta-feira, dia 30 de outubro, o PagSeguro mudou a sua homepage e com ela muitas coisas novas aconteceram. Inclusive rolou uma palestra para 70 pessoas do twitter que acompanharam as mudanças do Twitter. A palestra foi ministrada pelo Dennis Ferreira e pela Valéria Santos. Pessoas que tive a oportunidade de conhecer de perto e eles são pessoas responsáveis e estão conscientes das mudanças e do impacto que esta mudança causa.

PagSeguro - Uma empresa UOL

PagSeguro - Uma empresa UOL

Tem bastante gente falando sobre as novidades do novo site do PagSeguro por aí, então se quiser saber o que exatamente, recomendo os slides da palestra e uma busca no oráculo.

Mas, e na parte de códigos? O que muda? Você precisa atualizar seus códigos para essa nova plataforma? A resposta é simples e óbvia: NADA. Sim você não precisa atualizar seu código correndo achando que sua URL mudou. O PagSeguro deixou de ser implementado em ASP e passou a ser implementado em JAVA, o que deixou a aplicação muito mais robusta e segura, com isso a URL do retorno automático mudou. No site do PagSeguro eles indicam uma nova URL para o retorno automático ( https://pagseguro.uol.com.br/pagseguro-ws/checkout/NPI.jhtml ) mas a URL anterior continua funcionando normalmente e continuará por um longo tempo.

O pessoal do PagSeguro fez todas as alterações no seu sistema e antes de por no ar fez uma longa bateria de testes e só foi para o ar após verificar se todas as bibliotecas oficiais continuavam funcionando normalmente. Então, as URL de retorno automático continuará funcionando normalmente. Com o passar do tempo, é óbvio que a URL anterior morra, mas isso acontecerá muito tempo depois, até perceberem que ninguém mais utiliza a URL antiga.

A mudança vai ser longa e sutil, com o tempo iremos alterar todos os scripts para a nova URL, mas você não precisa sair desesperado para trocar suas URLs. O PagSeguro pensou bem nisso quando alterou a url de retorno automático. Eu mesmo fiz testes hoje de tarde para comprovar isso, já que recebi algumas dúvidas de alguns clientes e algumas pessoas reclamaram disso no twitter. Portanto, não se preocupe, você não precisa alterar nada no seu script de retorno automático do PagSeguro.

8 Comments »
Tagged as: Code, código, integração, javascript, novo pagseguro, pagseguro, php, python, rails, retorno automático, RoR, ruby on rails, Tecnologia, url

Configuração de encode do Python – Post rápido

Posted in python by DGmike
Jan 14 2009
TrackBack Address.

Sempre que vou trabalhar em Python habilito minha máquina virtual para rodar o xUbuntu. No linux as coisas fluem melhor quando o assunto é python (pelo menos na minha cabeça).

Uma questão que sempre me chamou a atenão é o fato de o python não rodar automáticamente arquivos em utf-8. Devemos colocar o seguinte cabeçalho no arquivo.

# -*- encoding: utf-8 -*-

Ou então criar um arquivo (caso ele não exista) chamado sitecustomize.py e inserir essa informação. O sitecustomize é carregado e executado sempre antes de qualquer script automáticamente. E, por isso, podemos implementar nele o charset dos arquivos para utf-8.

Passo-a-passo

Esta configuração foi necessária na migração após ocorrer o erro de ‘ascii’ ou ‘UnicodeDecodeError’, segue como mudar enconde do Python.

Em /usr/local/lib/python2.4/site-packages/sitecustomize.py criar arquivo com as linhas:

import sys
sys.setdefaultencoding("utf-8")

Referência no site da taniaandrea explicando como fazer isso por causa do zoope.

No Comments yet »
Tagged as: charset, codificação, encoding, python, utf-8

Switch no Python

Posted in Programação, python by DGmike
Feb 20 2008
TrackBack Address.

Hoje estava procurando uma solução para fazer um switch no python e acabei descobrindo que não é nativo do mesmo.

Sim, aquele simples switch do php ou mesmo do javascript que resove muitos problemas de codificação de programadores viciados nisso como eu que pode ser interpretado por:

switch ($variavel) {
  case 'item1':
    echo 'meu reino por um cavalo';
    break;
  case 'item2':
    echo 'meu cavalo por um reino';
    break;
  default:
    echo 'Sem item para mostrar';
    break;
}

Pesquisei no oráculo e achei algumas alternativas a isto, mas não achei nada em português, então vou colocar em português para ajudar os futuros programadores de python.

textos = {
    'item1': 'meu cavalo por um reino',
    'item2': 'meu reino por um cavalo'
}
print textos.get(variavel, 'Sem item para mostrar')

E estes são alguns casos genéricos do que pode ser feito.

var x = 10 ;
var y = 20 ;
var operator = "*"
var result = {
	"+" : function(x, y) { return x + y } ,
	"-" : function(x, y) { return x - y } ,
	"*" : function(x, y) { return x * y } ,
	"/" : function(x, y) { return x / y }
}[operator](x, y) ;
  if   value == 'a': result = x * 5
  elif value == 'b': result = x + 7
  elif value == 'c': result = x - 2
for value in [value]:
  if value == 'a':
    result = x * 5
    break
  if value == 'b':
    result = x + 7
    break
  if value == 'c':
    result = x - 2
    break
  # default
  result = x
  break

Particularmente eu prefiro o bom e velho switch do javaScript ou mesmo do php.

No Comments yet »

Reformatando as datas em python

Posted in Amigos, Cotidiano, Programação, python by DGmike
Jan 08 2008
TrackBack Address.

Como vocês sabem, estou aprendendo Python pouco a pouco. Meu amigo Fred decidiu fazer uma formatação de data recebida em MySQL para formato nacional em PHP.

Decidi fazer minha versão em Python.

>>> data = '2008-08-12'
>>> ndata = data.split ('-')
>>> ndata.reverse ()
>>> ndata = '/'.join(ndata)

ndata agora conterá o seguinte valor: 12/08/2008

Claro que esta não é a melhor solução, afinal ainda estou engatinhando na linguagem Python… mas funciona!

No Comments yet »
Tagged as: aprendendo python, data, formatação, formato, formato nacional, formato nacional de data, join, linguagem, linguagem Python, mysql, php, python, reverse, split, valor, versão

Calculadora simples em python

Posted in Programação, python by DGmike
Dec 28 2007
TrackBack Address.

Estava estudando um pouco de python e aprendi algo sobre listas (arrays em PHP), strings e definições (functions em php). Construí por conta própria uma mini calculadora básica que está funcionando normalmente. Eis o código fonte:

a = [0]
def zerar():
"""Zera a calculadora"""
a[:] = [0]
def mais(v):
"""Faz uma adicao"""
a.append ('>>> Mais %s' % v)
a.append (a[-2] + v)
def menos(v):
"""Faz uma subtracao"""
a.append ('>>> Menos %s' % v)
a.append (a[-2] - v)
def historico():
"""Mostra o historico das adicoes e subtracoes feitas"""
for item in a:
print item

É obvio que a estrutura pode ser uma das piores que você, guru do Python, já deve ter visto mas estou usando algumas novidades para mim, usuário de PHP. São elas:

- arrays negativos, então em [-2] eu “pego” o penultimo item do array (o ultimo é acessado por -1).
- append para “adicionar” um item a uma lista que em python é visto como um objeto (igual ao javascript).
- [:] onde “pego” todos os itens da lista. (logo em seguida, converto-os para a lista com um item de valor zero – [0])
- Concatenação de string com numeral que é feita através de virgulas (em PHP é ponto)
- for e print, muito parecidos ao PHP

A calculadora é simplesmente acessada da seguinte forma:

mais(5)
mais(5)
menos(6.5)

historico()

zerar()

mais(9)
menos(4.3)

historico()

Outra coisa que achei interessantissima é o uso de aspas triplas (!) para documentar um def (função) nas primeiras linhas da mesma. Assim, a documentação pode ser acessada por “nome_da_funcao.__doc__” (são dois underlines/linhas-de-sublinhado de cada lado).

print menos.__doc__

Irá imprimir: Faz uma subtracao

[update]
Não sei mais o que fazer, na hora do historico() o python (em shell) imprime: (‘>>> Mais ‘, 5) ao invés de >>> Mais 5 Alguém pode dar uma mão? Será por que estou rodando em shell? Na documentação que estou lendo não vi resposta. Aliás, dizendo a documentação, deveria imprimir a segunda opção mesmo. :D

[update]
Obrigado pela ajuda @dirceu, o código já foi corrigido. :D Usa-se o ‘sprintf‘ (em php) do python, com ajuda do %. Em php usamos sprintf ('Meu nome é %s', 'Michael'), e o %s é substituido pela string passada. Já em Python, simplesmente usa-se 'Meu nome é %s' % 'Michael'

No Comments yet »

Categorias

  • Cotidiano  (132)
    • Amigos  (16)
    • Dia-a-dia  (33)
    • Diversão  (18)
    • Games  (1)
    • Não categorizado  (26)
  • Design  (15)
    • Ilustração  (6)
    • Imagem  (8)
    • Inspiração  (5)
    • Vetorial  (5)
  • eventos  (10)
    • PHP Conference  (3)
  • flash  (4)
  • Navegadores  (22)
    • Chrome  (6)
    • extensions  (11)
    • Firefox  (18)
    • Internet Explorer  (6)
  • pagseguro  (12)
  • Programação  (106)
    • CSS  (20)
    • html  (7)
    • javascript  (36)
      • jQuery  (7)
      • yui  (2)
    • php  (44)
      • icephp  (4)
    • plugin  (3)
    • python  (5)
    • sql  (9)
    • tableless  (18)
    • wordpress  (2)
    • xHTML  (23)
  • Tecnologia  (70)
    • Semântica  (16)
    • Tutorial  (25)
    • video  (8)
      • video-tutorial  (5)
    • Windows  (4)
  • Trabalho  (33)
    • cases  (4)

Tags

ajax artigo banco de dados biblioteca blog browser classe CSS data Design Dia-a-dia dinheiro evento eventos Firefox framework google html icephp internet Internet Explorer javascript jQuery loja mysql opera pagseguro palestra php plugin Programação python retorno automático simples site solução sql tableless Tecnologia Trabalho Tutorial twitter visie web wordpress

Arquivo

SlideSare

Últimos Posts

  • Vá com calma
  • Vírgula em html5 e css3
  • Youtube e HTML5, agora ficou mais fácil
  • Novo emprego!
  • Até mais e obrigado pela salada

Tags

ajax artigo banco de dados biblioteca blog browser classe CSS data Design Dia-a-dia dinheiro evento eventos Firefox framework google html icephp internet Internet Explorer javascript jQuery loja mysql opera pagseguro palestra php plugin Programação python retorno automático simples site solução sql tableless Tecnologia Trabalho Tutorial twitter visie web wordpress

Conteúdo

  • Artigos
    • JavaScript (parte 1)
  • Códigos prontos
    • Bancos, bancos e mais bancos…
    • Classe sqlsimples e sql – PHP
    • PHP: Função __auloload()
  • Guia Rápido jQuery
  • PagSeguro
  • Quem é dgmike?
PagSeguro Powered by WordPress | “Blend” from Spectacu.la WP Themes Club