A Byte of Python

0
roktas
OSnews sitesinde gezinirken gözüme ilişti. Komple boyutta yeni bir Python kitabı. Yazarının ifadesiyle Python belgelerinin listelendiği sayfada Guido van Rossum´ un Python tutoryalinden hemen sonra ikinci sırada yerini almış.

A Byte of Python

Görüşler

0
tongucyumruk
Kitabı ben de OSNews'te gördüm, indirdim ve aşağı yukarı yarısını şehir içi bir otobüs yolculuğunda okudum. Açıkçası o kadar da hoşuma gittiğini söyleyemem. Görebildiğim kadarıyla fazla detaylara, python'u python yapan inceliklere pek te değinilmemiş. Bana kalırsa kitap daha çok bugüne kadar şöyle böyle programlamayla uğraşmış, şu python'da neymiş diye merak eden insanlara hitap ediyor. Tbabii daha kitabı bitirmedim, umarım ilerleyen bölümlerde bu fikrim değişir. Açıkçası python öğrenmek isteyenler için ben şu üç kaynağı tavsiye edeceğim:

Programlamaya ilk defa başlayanlar için:
How To Think Like A Computer Scientist: Learning With Python [www.ibiblio.org]

Önceden Programlama bilgisi olup ta python öğrenmek isteyenler için:
Python Tutorial [www.python.org]

Python'a yeni başlayan veya Python bilip te Python'un fantastik özellikleri hakkında bilgisini genişletmek isteyenler için:

Dive Into Python [www.diveintopython.com]
0
tongucyumruk
oops... diveintopython.com değil, http://www.diveintopython.org olacaktı...
0
sametc
kitabı okudum :)

bende hala okuyorum ve pythonu iyi sekilde tanıtır.
evet fazla detaylara girmemiş mesela lambda fonksiyonundan bahsetmemiş oysa tadından yenmez :)) ama bu kitap pek bahsetmemiş sanırım :) ornek kod python.orgdan

print (lambda Ru,Ro,Iu,Io,IM,Sx,Sy:reduce(lambda x,y:x+y,map(lambda y,
Iu=Iu,Io=Io,Ru=Ru,Ro=Ro,Sy=Sy,L=lambda yc,Iu=Iu,Io=Io,Ru=Ru,Ro=Ro,i=IM,
Sx=Sx,Sy=Sy:reduce(lambda x,y:x+y,map(lambda x,xc=Ru,yc=yc,Ru=Ru,Ro=Ro,
i=i,Sx=Sx,F=lambda xc,yc,x,y,k,f=lambda xc,yc,x,y,k,f:(k=4.0) or 1+f(xc,yc,x*x-y*y+xc,2.0*x*y+yc,k-1,f):f(xc,yc,x,y,k,f):chr(
64+F(Ru+x*(Ro-Ru)/Sx,yc,0,0,i)),range(Sx))):L(Iu+y*(Io-Iu)/Sy),range(Sy
))))(-2.1, 0.7, -1.2, 1.2, 30, 80, 24)

I LOVE YOU PYTHON ...

not : bu kodu hala anlamaya calışıyorum :).
0
tongucyumruk
Bu kod doğrudan kopi peyst edince çalışmıyor... sanıyorum k=4.0 satırıyla ilgili bir problem. Sanırım kodun orjinali şu:

http://www.python.org/search/hypermail/python-1994q3/0362.html
0
sametc
kodu test etmedim ama bana cok fantastik geldi ;) ve buraya koydum guvendim o kadar python.org adamlarına calışmamış nasıl oluyor ;)..

0
sametc
kodu test etmedim ama bana cok fantastik geldi ;) ve buraya koydum guvendim o kadar python.org adamlarına calışmamış nasıl oluyor ;)..

0
mentat
if (bu kodu yazan eleman benimle ayni yerde calisiyorsa)
if(patronumsa)
yeni bir is aramaya baslarim, bulur bulmaz patronu doverim
else if (bana bagli bir calisansa) // hic boyle biri olmadi ya simdiye kadar o ayri..
doverim sonra kovarim
else if (benimle yanyana calisiyorsa)
doverim

python'a lafim yok, lambda'ya da, sadece bi an midem kalkti kodu gorunce, tutamadim kendimi. dili degil, programciyi dovmek lazim evire cevire bence..
0
tongucyumruk
Eğer kodu çalıştırıp çıktıyı gördüysen bence dövmek değil gidip takdir etmek lazım (kodu çalıştırmayanlar için ne olduğunu söyllemiyorum, süpriz olsun). Daha önemlisi amca burada çok önemli birşeyi ispatlamış: Çok ısrar ederseniz python'la da okunaksız kod yazabilirsiniz.
0
sametc
kodu ikinci kez test ettim ve calıştı :))

gercekten Python'a bir kez daha hayran oldum ;) calıştırın ve cıkan grafiğe bakın ;)surpriz

tongucyumruk'un dediği gibi "eger ısrar ederseniz okunaksız anlamsız kodlar yazabilirsiniz"

I LOVE YOU PYTHON ;)
0
sametc
simdi kimse benim kodumu gorupte python calışmaz :) bu yuzden yeni bir duzeltme yapayım..

if else dongulerinden ornek vereyim:
programlama dili bildiğinizi varsayıyorum ve baslıyorum..

a=5
b=5

if a+b == 10 : print "evet 10 yapar"
else : print "hayır 10 yapmaz"

:) ne kadar kolay değilmi;)
0
tongucyumruk
hmm.. ne yazıkki işgüzar phpNuke'un backslash'leri ve indentation'ı becerememesi sebebiyle çalışmaz... bakalım kurtulabilecekmiyiz:

a, b = 5,5 #multiple assignment diye birşey varken neden 2 satır yazayım ki...

import sys

not(a+b == 10 or sys.stdout.write("eşit değil "))) or sys.stdout.write("eşit ")

tamam... backslash'in gazabından kurtulamadık ama en azından indentation hatasından kurtulduk...
0
sametc
evet bu da bir kolaylık ;) aklıma gelmemişti ;)
Görüş belirtmek için giriş yapın...

İlgili Yazılar

PostgreSQL ile Programlama Kitabı Projesi

tongucyumruk

PostgreSQL'in bir veritabanı sunucusu olarak performansı bilinen bir gerçek. Buna karşılık veritabanı kullanan uygulamalar alanında MySQL çok daha yüksek bir kullanım oranına sahip. Bunun bir sebebi de PostgreSQL hakkında, özellikle Türkçe, belge eksikliği. LKD e-posta listelerinin PostgreSQL düşkünlerinden Volkan Yazıcı yeni bir proje ile bu eksiği kapatmaya niyetlenmiş durumda.

Web Madenciliği ile Daha İyi Bir E-öğrenme Modeli Mümkün Mü?

FZ

Web madenciliği kısaca Web sayfaları ve servislerinden otomatik olarak bilgi çekip bunlardaki kalıpları keşfetmek için veri madenciliği tekniklerinin kullanılması olarak tanımlanabilir. Acaba makina öğrenme (machine learning) ve veri madenciliği (data mining) tekniklerinin özel bir dalı olan web madenciliği yöntemleri ile daha iyi e-öğrenme sistemleri geliştirmek mümkün müdür?

Missouri-Columbia Üniversitesinden James Laffey ve Jiye Ai'nin "Web Mining as a Tool for Understanding Online Learning" başlıklı makalesi bu ve benzeri sorulara olumlu cevaplar vermenin yanısıra güzel ve pratik bir örnek de gösteriyor: Yazıda somut olarak bir Blackboard (webct) e-öğrenme sisteminin web madenciliği ile nasıl daha da faydalı ve verimli hale getirilebileceği anlatılıyor.

Araştırmacılar, makalenin başında web madenciliği tekniklerinin başlıca şu üç noktada ciddi fayda getireceğini belirtmişler: devamı burada...

Xmame : Birkaç Romalı Dövelim Mi?

darkhunter

Xmame, zamanında Atari salonlarında harçlıklarımızı tükettiğimiz oyunları GNU/Linux'a taşıyan bir emülatör. Emülatörler ve Emülasyon hakında daha fazla bilgi almak için buraya bakabilirsiniz. Bu klavuz xmame'in Debian GNU/Linux altında kurulumunu ve çalıştırılmasını anlatmaktadır. Ek olarak günün stresini Romalı döverek atmak isteyenlere yol göstermektedir. ;-)

Hackers: Sıradışı Bir Dönemin Sıradışı Hikayesi

FZ

2004 yazının sıcak günlerinden birinde, e-postalarımı kontrol ederken beni şaşırtan şu iletiyi karşımda gördüm: "İstemiş olduğunuz Hackers - Heroes of the Computer Revolution adlı yayın kütüphanemize gelmiştir ve teknik işlemleri yapılmaktadır. İşlemler bittikten sonra yayın kataloğumuzdan görülebilir. Bu durumu online kataloğumuzdan takip edebilirsiniz. -- İTÜ Kütüphane ve Dökümantasyon Daire Başkanlığı"

Bir an için duraksadım ve şaşırdım, ne olduğunu tam olarak kavrayamamıştım. Daha sonra ise hatırlama süreci ile parçalar yavaş yavaş yerine oturmaya başladı...

Steven Levy'nin bir döneme ışık tutan ve GNU/Linux'tan çok daha fazlasına tarihi bir perspektifle yer veren meşhur kitabının Ergin Sevinç tarafından yazılmış eleştirisinin devamını ileriseviye.org adresinde okuyabilirsiniz.

Fedora Core 1.0 ile Internet Bağlantı Paylaşımı

anonim

"Linux ile internet bağlantımı nasıl paylaştırabilirim?" sorusu mail listeleri ve forumların en popüler soruları arasındadır. Bu makale En azından fedora için ortaya net bir çözüm koyuyor ve diğer dağıtımlar içinde referans oluşturuyor.