[zope-pt] Número de itens por pagina no folde r_summary_view

2007-12-27 Por tôpico Thiago M. Figueiredo
Opá galera blz?

Alguém já viu com fazer para o folder_summary_view ficar com um numero 
menor de itens por pagina pois por padrão é 100.

valew galera abraço.

-- 

Thiago M. Figueiredo
E-Mail: [EMAIL PROTECTED]
E-Mail: [EMAIL PROTECTED]
Cel: (55 11) 8627-5343
http://www.pzpzine.com
http://www.thiagofigueiredo.com
'Open Source' o conhecimento é do mundo! :P
Usar software proprietario R$ 450,00 com MasterCard, usar software livre não 
tem preço :D



[zope-pt] script de exemplo do livro Zope não funciona!

2007-12-27 Por tôpico adeniltonandrade
Pessoal, sei que pode parece besteira, mas pra um iniciante, tentar
aprender com um script errado (pelo menos não rodou no Zope aqui do
meu laptop), se torna um grande obstáculo.

No sub capítulo Codificando Lógica com Scripts do Capítulo 4.


//esse não funcionou -- 
{ 
## Script (Python) calculateCompoundInterest 
##parameters=principal, interest_rate, periods, years 
## 
 
Calculate compounding interest. 
 
i = interest_rate / periods 
n = periods * years 
return ((1 + i) * n) principal )
)

esse funcionou -- 
}
i = interest_rate / periods 
n = periods * years 
r = 1 + i 
u = r * n 
t = u * principal 
return t ) 
 
O erro do primeiro bloco--

// invalid syntax (Script (Python), line 6) 

não conheço Python! esse foi meu primeiro contato e pelo que vi, essa
linguagem é muito mais simple... 

ao som de Satisfaction. Benny Benassi.

Grato, 

Adenilton Andrade.



Re: [zope-pt] Número de itens por pagin a no folder_summary_view

2007-12-27 Por tôpico Thiago M. Figueiredo
Thiago M. Figueiredo wrote:

 Opá galera blz?

 Alguém já viu com fazer para o folder_summary_view ficar com um numero
 menor de itens por pagina pois por padrão é 100.

 valew galera abraço.

 -- 
 
 Thiago M. Figueiredo
 E-Mail: [EMAIL PROTECTED] mailto:thiago%40pzpzine.com
 E-Mail: [EMAIL PROTECTED] 
 mailto:tmarquesfigueredo%40yahoo.com.br
 Cel: (55 11) 8627-5343
 http://www.pzpzine.com http://www.pzpzine.com
 http://www.thiagofigueiredo.com http://www.thiagofigueiredo.com
 'Open Source' o conhecimento é do mundo! :P
 Usar software proprietario R$ 450,00 com MasterCard, usar software 
 livre não tem preço :D

  

Opa galera falta de atenção minha achei basta customizar o 
*getFolderContents* e la no *Parameter List* achar a variável *b_size* 
de 100 para o numero desejado muito obrigado..

Ate mais abraço

-- 

Thiago M. Figueiredo
E-Mail: [EMAIL PROTECTED]
E-Mail: [EMAIL PROTECTED]
Cel: (55 11) 8627-5343
http://www.pzpzine.com
http://www.thiagofigueiredo.com
'Open Source' o conhecimento é do mundo! :P
Usar software proprietario R$ 450,00 com MasterCard, usar software livre não 
tem preço :D



Re: [zope-pt] Re: script de exemplo do livro Zope não funciona!

2007-12-27 Por tôpico Luciano Ramalho
On Dec 27, 2007 7:17 PM, Marcelo Barbosa Araujo [EMAIL PROTECTED] wrote:
 
 Calculate compounding interest.
 
 i = float(interest_rate)/int(periods)
 n = int(periods)*int(years)
 return (((1 + i)**n)*float(principal))

 Nesses casos é recomendado fazer TypeCast explícito (int, float, etc)
 e a operação de potência é (**)
 Basicamente, o erro que deu foi pela falta dos ints e floats.

Oi, Barbosa, embora seja boa a sua sugestão de ser explícito nas
conversões, eu não gosto muito deste estilo.

Um outro jeito, ainda seguindo a sua sugestão de ser explícito, ficaria assim:

# garantir os tipos dos dados
principal = float(principal)
interest_rate = float(interest_rate)
periods = int(periods)
years = int(years)

# fazer as contas
i = interest_rate/periods
n = periods*years
return ((i+1)**n)*principal

Eu prefiro assim porque as contas ficam mais fáceis de ler e em muitos
casos a parte de garantir os tipos dos dados já está assegurada de
outra maneira no programa.

Agora, o erro que o Adenilton indicou era um erro de sintaxe, e
realmente tinha vários problemas sintáticos no código que ele
reproduziu (tipo uns parenteses voando). Adenilton, se você puder
dizer exatamente de qual livro de Zope você tirou esse exemplo, talvez
alguém que tenha o livro pode te ajudar a conferir o código.

[ ]s
Luciano


[zope-pt] Re: script de exemplo do livro Zope não funciona!

2007-12-27 Por tôpico Marcelo Barbosa Araujo
Salve Adenilton!

Olha, o script que não funcionou pode ser escrito assim:


Calculate compounding interest.

i = float(interest_rate)/int(periods)
n = int(periods)*int(years)
return (((1 + i)**n)*float(principal))


Nesses casos é recomendado fazer TypeCast explícito (int, float, etc)
e a operação de potência é (**) 
Basicamente, o erro que deu foi pela falta dos ints e floats.

[]`s
Barbosa




--- Em zope-pt@yahoogrupos.com.br, adeniltonandrade
[EMAIL PROTECTED] escreveu

 Pessoal, sei que pode parece besteira, mas pra um iniciante, tentar
 aprender com um script errado (pelo menos não rodou no Zope aqui do
 meu laptop), se torna um grande obstáculo.
 
 No sub capítulo Codificando Lógica com Scripts do Capítulo 4.
 
 
 //esse não funcionou -- 
 { 
 ## Script (Python) calculateCompoundInterest 
 ##parameters=principal, interest_rate, periods, years 
 ## 
  
 Calculate compounding interest. 
  
 i = interest_rate / periods 
 n = periods * years 
 return ((1 + i) * n) principal )
 )
 
 esse funcionou -- 
 }
 i = interest_rate / periods 
 n = periods * years 
 r = 1 + i 
 u = r * n 
 t = u * principal 
 return t ) 
  
 O erro do primeiro bloco--
 
 // invalid syntax (Script (Python), line 6) 
 
 não conheço Python! esse foi meu primeiro contato e pelo que vi, essa
 linguagem é muito mais simple... 
 
 ao som de Satisfaction. Benny Benassi.
 
 Grato, 
 
 Adenilton Andrade.





[zope-pt] Re: script de exemplo do livro Zope não funciona!

2007-12-27 Por tôpico adeniltonandrade
fala galera! 

Luciano,Marcelo, bem que eu estranhei a falta da declaração dessas
variáves,  estudo programação em c/c++ na federal de Alagoas, mas aida
assim o código que fiz---v

-
i = interest_rate / periods
n = periods * years
r = 1 + i---não gerou lixo* e retornou um valor int.
u = r * n
t = u * principal
return t
--


Continuando os trabalhos, testei os dois scripts. São funcionalmente
identicos. retornam a mesma resposta.

---
 i = float(interest_rate)/int(periods)
 n = int(periods)*int(years)
 return (((1 + i)**n)*float(principal))
---

---
# garantir os tipos dos dados
principal = float(principal)
interest_rate = float(interest_rate)
periods = int(periods)
years = int(years)

# fazer as contas
i = interest_rate/periods
n = periods*years
return ((i+1)**n)*principal
---

Marcelo, o script do livro é esse abaixo.
copiei errado da primeira vez.

será que é sintaxe? ou o velho undeclared?
---
## Script (Python) calculateCompoundInterest
##parameters=principal, interest_rate, periods, years
##

Calculate compounding interest.

i = interest_rate / periods
n = periods * years
return ((1 + i) * n) principal
---

URL onde pode-se encontrar esse frame ---v
http://www.tchezope.org/documentacao/manual/o-livro-do-zope/usando-objetos-basicos-do-zope

Título -  Codificando Lógica com Scripts

Continuo os estudos...

Adenilton Andrade.




[zope-pt] Re: script de exemplo do livro Zope não funciona!

2007-12-27 Por tôpico Marcelo Barbosa Araujo
Adenilton,

O script que funcionou também apresenta erro em tempo de execução:

Traceback (innermost last):

* Module ZPublisher.Publish, line 119, in publish
* Module ZPublisher.mapply, line 88, in mapply
* Module ZPublisher.Publish, line 42, in call_object
* Module Shared.DC.Scripts.Bindings, line 313, in __call__
* Module Shared.DC.Scripts.Bindings, line 350, in _bindAndExec
* Module Products.PythonScripts.PythonScript, line 327, in _exec
* Module None, line 1, in a
  PythonScript at /Plone/a
  Line 1

TypeError: unsupported operand type(s) for /: 'str' and 'str'

(A divisão não pode ser realizada sobre duas strings)

Esse erro ocorre porque os parâmetros do script python são tratados
como string. Exatamente por conta disso é que faço a conversão
explícita. E o Luciano tem razão: eu tb gosto de escrever código
separando bem passo-a-passo cada operação. É bem mais legível. Recomendo.

Sempre escuto dizer que o python tenta inferir o tipo de variável para
cada operação e faz o typecast automático qdo possível. Alguém
confirma essa informação?

PS: Pode parecer sadismo, mas é melhor vc pegar um código do livro com
um pequeno erro e descobrir qual é do que pegar um código redondinho e
ficar só fazendo trabalho de papagaio. Vc aprende muito correndo atrás
de erro...rs

Abraço,
Barbosa

--- Em zope-pt@yahoogrupos.com.br, adeniltonandrade
[EMAIL PROTECTED] escreveu

 fala galera! 
 
 Luciano,Marcelo, bem que eu estranhei a falta da declaração dessas
 variáves,  estudo programação em c/c++ na federal de Alagoas, mas aida
 assim o código que fiz---v
 
 -
 i = interest_rate / periods
 n = periods * years
 r = 1 + i---não gerou lixo* e retornou um valor 




Re: [zope-pt] Re: script de exemplo do livro Zope não funciona!

2007-12-27 Por tôpico Luciano Ramalho
On Dec 27, 2007 10:41 PM, Marcelo Barbosa Araujo
[EMAIL PROTECTED] wrote:
 Sempre escuto dizer que o python tenta inferir o tipo de variável para
 cada operação e faz o typecast automático qdo possível. Alguém
 confirma essa informação?

É legal deixar claro para quem tá chegando agora que o interpretador
de Python *nunca* muda o tipo de um valor. E não faz sentido falar em
tipo de variável em Python, porque as variáveis em Python não têm
tipo, apenas os valores têm tipo.

No caso dos operadores aritméticos, o que acontece é que o resultado
depende dos tipos dos operandos. Por exemplo, se você divide um
inteiro por outro, o resultado é sempre um inteiro (exatamente como na
linguagem C, por sinal). Por isso a famosa pegadinha:

 7/2
3

Mas:

 7./2
3.5

Por sinal, essa pegadinha sumiu no Python 3.0, porque agora o operador
de divisão inteira é o //, e o / devolve 3.5 no primeiro exemplo
acima. Mas enquanto usamos o Python 2, em muitos casos vale a pena se
prevenir escrevendo divisões assim:

r = float(a)/b

Desta forma o resultado será sempre um float, mesmo que a e b sejam inteiros.

[ ]s
Luciano