Jump to content


Photo

Você Sabia?


  • Faça o login para participar
10 replies to this topic

#1 Kakao

Kakao

    Turista

  • Usuários
  • 42 posts
  • Sexo:Não informado
  • Localidade:Brasília

Posted 13/04/2006, 14:22

Você sabia?

As funções filter() e map() foram introduzidas no Python há mais de 12 anos.

Muitos hoje defendem que elas sejam retiradas do Python na chamada versão 3000 já que as list comprehension são muito mais legíveis:

Dada uma funcão p(x) e uma lista s:

  >>> def p(x):
  ...   return x < 4
  ...
  >>> s = range(10)
  >>> s
  [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Compare filter() com uma list comprehension:

  >>> filter(p, s)
  [0, 1, 2, 3]

  >>> [x for x in s if p(x)]
  [0, 1, 2, 3]

Agora compare map() com uma list comprehension:

  >>> map(p, s)
  [True, True, True, True, False, False, False, False, False, False]

  >>> [p(x) for x in s]
  [True, True, True, True, False, False, False, False, False, False]

Eu sempre tenho que pensar para entender o que filter() e map() estão fazendo ao passo que uma comprehension é só bater o olho. O que você acha? filter() e map() devem ser banidas?

#2 Prog

Prog

    ...

  • Ex-Admins
  • 3761 posts
  • Sexo:Masculino
  • Localidade:Rio de Janeiro/RJ
  • Interesses:TI, Software Livre, Design Digital e Rock'n'Roll.

Posted 13/04/2006, 14:42

Certamente elas não são mantidas a toa.

Devem ser mais velozes, além de manter compatibilidade com ferramentas criadas antes das versões mais atuais. Se a cada nova versão de uma tecnologia fossem excluindo tudo oq tivesse de velho, acho que o termo "compatibilidade" não existiria.
------
Mero mortal!

#3 Kakao

Kakao

    Turista

  • Usuários
  • 42 posts
  • Sexo:Não informado
  • Localidade:Brasília

Posted 13/04/2006, 16:50

Certamente elas não são mantidas a toa.

Não, com certeza há um motivo. Este motivo é chamado compatibilidade. A versão 3000 se propõe a quebrar a compatibilidade com as versões anteriores em favor de uma linguagem mais limpa consolidando as lições aprendidas nestes muitos anos de Python e evitando se tornar mais um Perl 6.

Naturalmente a linha 2.x continuará a existir e ser distribuída ao lado da 3000.

Devem ser mais velozes

No Python é surpreendente como o mais simples costuma ser o mais eficiente. Não testei este caso mas já vi acontecer muitas vezes em que códigos "otimizados" apanham do simples e claro.

#4 Graymalkin

Graymalkin

    Novato no fórum

  • Usuários
  • 23 posts
  • Sexo:Não informado

Posted 13/04/2006, 19:48

Bom, vale lembrar que funções anônimas (criadas com o lambda) podem ser utilizadas com filter() e map():

s = range(10)
filter(lambda x: x < 4, s)
map(lambda x: x < 4, s)

Neste caso, filter() e map() ficam tão legíveis quanto uma list comprehension. É claro que a limitação neste caso é que nem tudo se pode colocar em um lambda (como outras instruções).
De qualquer maneira, eu acho interessante a idéia de retirar estas funções para deixar a coisa mais coerente, afinal, o Zen de Python diz: "There should be one-- and preferably only one --obvious way to do it." (Deverá haver um - e preferivelmente apenas um - meio óbvio de se fazê-lo.)

Abraços,

Graymalkin
"Se pudéssemos conhecer todos os percalços do nosso destino, a vida seria tão demasiado cheia de esperança e medo, de louvor e decepção, que não nos deixaria uma única hora de paz verdadeira." (Nathaniel Hawthorne)
Participe você também da campanha "Eu sei escrever!"
Acesse: Graymalkin Software

#5 Kakao

Kakao

    Turista

  • Usuários
  • 42 posts
  • Sexo:Não informado
  • Localidade:Brasília

Posted 14/04/2006, 09:00

Lambda? Que nome mais infeliz. Serve para dar a certeza ao novato que melhor é não mecher com esse "trem" complicado. E a sintaxe certamente não ajuda. Nas linguagens que eu consigo lembrar os parâmetros são passados entre parêntesis. Como adivinhar que aquele x: é o parâmetro para uma função? Muito esquisito.

Fora ser usado em list(), map() e reduce() (outra candidata à aposentadoria), são raros os usos de lambda. Parece que o lambda foi criado só para estas funções e se elas forem embora...

#6 Graymalkin

Graymalkin

    Novato no fórum

  • Usuários
  • 23 posts
  • Sexo:Não informado

Posted 14/04/2006, 13:44

Lambda? Que nome mais infeliz. Serve para dar a certeza ao novato que melhor é não mecher com esse "trem" complicado.

Novato em Python ou novato em programação? Porque eu, quando comecei em Python, lá por volta de 1999, achei deveras interessante poder criar funções com lambda e atribuí-las a um identificador (ou passá-las diretamente).

E a sintaxe certamente não ajuda. Nas linguagens que eu consigo lembrar os parâmetros são passados entre parêntesis. Como adivinhar que aquele x: é o parâmetro para uma função? Muito esquisito.

Para isso existe a documentação; justamente para você não ter que "adivinhar".

Fora ser usado em list(), map() e reduce() (outra candidata à aposentadoria), são raros os usos de lambda. Parece que o lambda foi criado só para estas funções e se elas forem embora...

Sim, também se fala na erradicação do lambda, uma vez que ele é muito limitado em comparação com uma função criada do modo tradicional.

Abraços,

Graymalkin
"Se pudéssemos conhecer todos os percalços do nosso destino, a vida seria tão demasiado cheia de esperança e medo, de louvor e decepção, que não nos deixaria uma única hora de paz verdadeira." (Nathaniel Hawthorne)
Participe você também da campanha "Eu sei escrever!"
Acesse: Graymalkin Software

#7 Sabinalu

Sabinalu
  • Visitantes

Posted 08/07/2015, 17:51

Agora como estavam reclamando dos "desmotivacionais" eu resolvi enviar alguns "motivacionais", mas se quiser eu volto a enviar para você os do primeiro grupo, quer ????

#8 RonsisM

RonsisM

    Super Veterano

  • Usuários
  • 15724 posts
  • Sexo:Masculino
  • Localidade:Plovdiv

Posted 25/10/2017, 07:58

Gel Kamagra viagra Propecia Online No Rx Levitra Bayer Bestellen Levitra Pills Online

#9 gapedlok

gapedlok

    12 Horas

  • Usuários
  • 223 posts
  • Sexo:Feminino
  • Localidade:Albufeira

Posted 29/10/2017, 04:36

Discounts! 2017 hair products

progect13.jpg
Products which fall under this return policy can be returned domestically, as long as they are unused and in the original packaging. No questions asked!
If a product that falls under this guarantee is found to be counterfeit, you will get a full refund (shipping costs included).

buy.png

READ MORE
Peruvian virgin hair body wave 7a unprocessed virgin hair peruvian body wave 3 bundles human hair weave peruvian hair bundles ( 48.79 $)
Hot New 1PC 10g-38g spinner Fishing Lure mepps metal bait Spoon Fishing Tackle Vissen Pesca Sequin Paillette Single Mustad hooks ( 2.74 $)
Man's casual messenger travel bag business office laptop bags for man 2015 leather briefcases men maletin hombre cartable homme ( 49.50 $)
Thermal Discoloration Mug-11.86 $
2016 new womens warm fleece inside beanie hats winter mink raccoon fur pompom hat female cap ( 10.80 $)
Brazilian Virgin Hair 3PCS Brazilian Deep Wave 7A Deep Wave Brazilian Hair, Virgin Brazilian Hair Weave Bundles 100% Human Hair ( 55.32 $)
Bike pump giyo gp-41s made in taiwan pressure gauge mountain mini bicycle air pump cycling accessories (av) (fv) ( 20.00 $)
рецензия +на книгу бедная
турбина ремонт
team fortress 2 скачать бесплатно
Too Hot Sale Kisses Faced Liquid Melted Matte Long Wear Lipstick Metal Matte Lipgloss Makeup Lip Gloss Cosmetics 12 Colors ( 2.48 $)
Big bag2016 women s beach fashion waterproof color handbag large shoulder bag handbag casual female bolsa ( 20.74 $)
7a brazilian deep curly virgin hair rosa hair products brazilian deep wave 4 bundles brazilian hair weave bundles human hair ( 53.70 $)
JJRC H36 2.4GHz 4CH 6 Axis Gyro RC Quadcopter-16.51 $
New brand ski goggles big lens uv400 antifog ski mask glasses men women snow goggle snowboard goggles ski eyewear adult ( 40.00 $)


38bb.jpg

#10 LarPhozyHah

LarPhozyHah

    Super Veterano

  • Usuários
  • 14515 posts
  • Sexo:Masculino
  • Localidade:San Miguel de Tucuman

Posted 07/11/2017, 18:26

Acheter Du Xenical Moins Cher viagra Shipped Ups Isotretinoin Propecia Leberwerte Vipro Lifescience Tadalafil

#11 Allantip

Allantip

    Novato no fórum

  • Usuários
  • 14 posts
  • Sexo:Feminino
  • Localidade:Doha

Posted 31/12/2017, 07:21

http://www.eldorador...-Kamagra-Jelly/]Kamagra Kaufen Online[/url] When you have a perception for a online business, you need to discuss relevant online business offerings before starting your company. This can provide you with a foundation to build numerous revenue channels after, upping your revenue all over the table. Think about selling item to choose your service, or developing accessories that match the base goods you're presently marketing. http://www.papedelca...zerland]Kamagra Gel[/url] Use a practical list along with a stopwatch when you are shopping for groceries. This can help you to protect yourself from poor and unexpected items which won't help you with your fat burning plan! http://www.tricomxpl...0mg-Price-9]Buy Viagra Online New Zealand[/url] To apply good natural power habits you ought to transform it into a priority to recycle in your own home. Everything that is recyclable must be taken care of and held in a reuse container. Using this method, you take a dynamic role for making certain the planet remains safe and secure for all whilst reducing on electricity costs. http://www.metalicah...-supplement]buy ansomone hgh uk[/url]
http://www.dogankaya...asp?p=35]CialisBestellen Erfahrung[/url]
When you have issues with loud snoring at nighttime, make an effort to crystal clear your airways with steam before going to sleep. Mucous build-up in the daytime from allergy symptoms, dairy products or colds can clog air passages, causing you to snore. Inhale and exhale water vapor from the humidifier, a very hot shower, or you can even keep your head across a very hot pot of water. This will help to release and remove mucous and phlegm and minimize loud snoring.
http://www.bilicanpe...tropin-354]UsedLr3 Uk[/url]
Here is a preventive cancers hint that lots of men and women may well not like: Try to reduce the amount of fatty various meats and extra fat dairy foods you take in day-to-day. These kinds of products can consist of harmful toxins that usually collect from the foods sequence through pet body fat, like PCB and dioxins.
http://www.energotha...elbourne]ViagraPills Sydney[/url]
For any vacation spot wedding event, begin planning a calendar year ahead of time. You will have to discover what kind of make it possible for you want: words can be quite a problem if you are planning in foreign countries. You might need passports and visas also. Find caterers along with other providers in your community in advance to speak using them as much as possible.
http://www.tispk.com/images/directors.php?page=Cialis-Bestellen-Nachnahme,Cialis-Austria-Apotheke,Cialis-Ãsterreich-Preis-39]CialisBestellen Nachnahme[/url]




0 user(s) are reading this topic

0 membro(s), 0 visitante(s) e 0 membros anônimo(s)

IPB Skin By Virteq