Python 2.3 çıktı

0
tongucyumruk
Python'un birçok yenilik içeren 2.3 sürümü çıktı. Özellikle "iteration" konusundaki yeniliklerin göze çarptığı yeni sürümdeki değişikliklerden bazıları şöyle:
  • Kaynak kodu dosyalarında karakter seti belirtilebiliyor
  • Evrensel yeni satır karakteri desteği eklendi
  • Zip dosyalarından modül alabilme yeteneği
  • Windows sistemlerde Unicode dosya isimlerine erişim
  • Jeneratör desteği
  • Gerçek bir boolean veri tipi
  • enumerate() ve sum() fonksiyonları
Değişikliklere ilişkin daha daha detaylı bilgiye buradan ve buradan erişmek mümkün.

Görüşler

0
Teorisyen
iteration ne demektir? Bunu bilemedik !
Kaynak kodu dosyalarında karakter seti belirtmenin ne faydası var ? Bunu da bilemedik !
Evrensel yeni satır karakteri ne demek ki ?
Zip dosyalarında modül alıyor muş? Eğer zip sıkıştırma algoritması değişirse sonra ne olacak !
Unicode de ne demek ?
Python programlama dili bir de elektrik mi üretiyor ?
Boolean! Bunu biliyormuyum bilmiyor muyum, bunu da bilmiyorum !
Enumerate ve sum u da bilemedik... Ama sum u Excelden hatırlıyorum galiba...

Böyle sorular aklımdan geliiir gider !
Birileri cevap vermeye değer bulursa cevaplar, bulamazsa bu sorular cevapsız kalır...

Saygılarımla :)
-------------------------------------------------
Programcılığa Python ile başlamayı düşünen ama bir türlü sorularına cevap bulamayan bir adam !
0
tongucyumruk
İteration : Bir listenin elemanları üzerinde teker teker işlem yapmaktır. Python bu gibi işlerde kuracağınız for döngüleri yerine bazı basit fonksiyonlarla bu tip işleri kolaylaştırır... map(), reduce(), filter() bunların tipik örnekleridir. Yeni eklenen itertools modülü de bu konuda yeni güzellikler getirmektedir.

Kaynak kodu dosyalarının karakter setini belirtmek unicode kullanırken işi kolaylaştırır... Şöyleki Python'da unicode için string'den farklı olarak bir unicode nesnesi vardır. siz print, str gibi komutları kullandığınızda python bunu stringe otomatik olarak çevirir. bu noktadaki sorun stringe çevirme işlemi sırasında ascii karakter setini kullanmasıdır. Bu da ingilizce dışındaki hemen her dilde sorun çıkartır. Bu nedenle normalde unicode nesnensinin encode() fonksiyonuna istediğimiz karakter setini belirterek ascii yerine düzgün bir karakter seti ile string' dönüşmesi sağlanır. Dosyanın başında karakter seti belirtilmesi bizi tüm bu encode vs... işlerinden kurtarır...

Evrensel yeni satır karakteri (Universal Newline Character) kabul ediyorum ki biraz saçma bir isim olmuş ama ingilizcesi de böyle... Görevi ise şu: Bildiğiniz gibi normalde her işletim sisteminin kafasına göre satır sonu karakteri belirlemesi gibi bir gelenek vardır. Unix altında satır sonu ile, windows altında ile mac'te ise ile verilir. Pythonda bundan böyle dediğimizde her platformun kendine özgü satıronu karakterini kullanabileceğiz.

Zip sıkıştırma algoritması ne sıklıkla değişir?

Unicode dünyadaki birçok dildeki hemen hemen bütün karakterlerin tek bir karakter seti kullanılarak ifade edilebilmesini sağlayan bir sistemdir. Detaylar için http://www.unicode.org

Dilin kendisi elektrik üretmiyor ama eğer bilgisayarınızda Python kodu çalışırken elektrik kesilirse Guido van Rossum bizzat gelip manyetoyla elektrik sağlıyor. Generator yapıları basit bir tanımla sürekli yeni değerler üreten fonksiyonlar. Bunu yaparken de eski değerlerini kaybetmiyorlar.

Boolean True ve False (Doğru/Yanlış, Evet/Hayır) türünde veri tutan değişkenlere verilen addır. Bu sürüme kadar Ptyhonda gerçek bir boolean türü bulunmuyordu. Onun yerine C'dekine benzer "0 olmayan herşey True, 0 False" mantığıyla çalışıyordu.

enumerate() ve sum() yine python tarzı kolaylık fonksiyonları. enumerate() verdiğiniz bir listeyi şu hale çeviriyor:
orjinalliste = ["a","b","c"]
enumerate(orjinalliste)
[(0,"a"),(1,"b"),(2,"c")]

Sum ise verdiğiniz listenin elemanlarını topluyor. Böylece reduce() fonksiyonunun işinin bir kısmını devralıyor.
0
Teorisyen
Sn. Tongucyumruk, zahmet edip de benim saçma sapan sorularıma vermiş olduğunuz cevaplar için çok teşekkür ederim...

Winzip in 9. versiyonu çıkmış...
Zip sıkıştırma algoritması değişmiyorsa, sadece winzip programının arayüzü veya ufak tefek eklentileri falan mı değişmiş oluyor?

Daha doğrusu şöyle sormalıyım...
Winzip programı zip sıkıştırma algoritması kullanıyor...
Winzip programının her yeni bir sürümü çıktığında zip sıkıştırma algoritmasında biraz değişiklik olması gerekmez mi....
Yoksa zip sıkıştırma algoritması uluslararası bir standart da, bu tür değişimlerden çok az mı etkileniyor ?
0
realist
Çevrendeki herkese anlatman koşulu ile:
(benim dilimde tüy bitti de)

Winzip arşiv yapan ve arşiv açan bir programdır hepsi bu. Winrar da böyledir ama rar algoritmasının sahibi rarsoft'a aittir. Demek ki neymiş. Zip her şey, Winzip hiç bir şey. Hatta illa para verilecekse winrar'a verilmeliymiş. (Biliyorum memlekette bu programların bedele tâbî olduğunu umursayan kimse yok.)

Ayrıca ne dediğini bilmeden konuşmamak gerekir. Zip algoritmasının değişmesi ne demektir? python yorumlayıcısı kendi modüllerini zip'leyecek, script çalışmaya başladığında açabilecek, böylece python dağıtımının ya da hazırlanan programın -eğer gerekliyse- diskte az yer kaplaması sağlanacak. Her şey python'un içinde. Ortada bir bağımlılık yok.
0
Teorisyen
Ben burada Winzip'in 9. Versiyonunun çıktığını, winzip'in her yeni versiyonu çıktığında zip algoritmasına ufak tefek de olsa değişiklik olup olmadığını sormuştum... !

Siz ise bana winrar diye bir program olduğunu, RAR sıkıştırma algoritmasının sahibinin ise rarsoft olduğunu belirtmişsiniz...

Ben, burada en asgarisi bilgisayar programcısı, en azamisi ise geek sınıfından bilgisayar mühendisi olan ve burada durmadan birşeyler anlatan, anlatmaya çalışan veya en azından çene çalan abilerimin sınıfından değilim ! (Ticaret Lisesi mezunu, kendi halinde Word ile Excel kullanmaya çalışan, ara sıra birşeyler kurcalayan, belki sizin gözünüzde basit bir bilgisayar kullanıcısıyım)

Yaz mevsiminin gelmesi nedeniyle fazlamesai'nin haberlerinde ve bu haberlere yapılan yorumlarda biraz azalma gördüğüm ve bu yüzden canımın sıkılması nedeniyle ORTALIK BİRAZ ŞENLENSİN diyerek o soruları öylesine sormuştum...
Yani cevaplarını alsam bile benim bir işime yaramayacaktı, ama bu soruları CİDDİYE alıp cevaplayan Sn. Tonguçyumruk'a hakkaten teşekkür ederken, sizin ne dediğini bilmeden konuşmamak gerekir şeklindeki yorumunuzu hiç mi hiç size yakıştıramadım !

Python'un zip sıkıştırmasını kendisinin yaptığı için böyle değişikliklerden etkilenmeyeceğini söylemeniz yeterli idi, beni tekme kötek kovalayarak değil !
-------------------------------------------
Bahtsız bedevimiyim ne?
0
conan
>Boolean! Bunu biliyormuyum bilmiyor muyum, bunu da bilmiyorum !

Bunu bilmiyorsan programciliga baslama ;) Once bunu ogren sonra programlamaya basla hehe ;)
0
FZ
.
.
.
if (!isBooleanKnown) {
isBooleanKnown = true;
continue;
}
.
.
.
Görüş belirtmek için giriş yapın...

İlgili Yazılar

Contiki İşletim Sistemi ve Masaüstü Ortamı

FZ

1 Mhz saat frekansında çalışan 8 bitlik 6510 mikroişlemcisi ve 64 KB ana hafızası olan bir Commodore-64 üzerinde bir Multi-tasking kernel, temaları ile oynayabileceğim bir pencere yöneticisi, Internet'e RS-232/SLIP ya da Ethernet üzerinden bağlanmamı sağlayan bir TCP/IP stack'i, buna doğal ek olarak hazır bağlanmışken web sayfalarını görüntüleyebileceğim bir Internet tarayıcısı, bir web sunucu ve bir de uzaktan sistemlere erişim için bir Telnet istemcisi istesem herhalde bana gülersiniz ve "saçmalama olur mu öyle şey!" dersiniz değil mi? Hmm, ama belki de demezsiniz ;-)

Kızgın Programcılar Ordusuna Bir Üye Daha

TiberiusKirk

CNET news.com'dan...
"Gnutella author Justin Frankel is considering quitting Nullsoft, the company he founded and sold to America Online, following repeated clashes with his corporate parent over software projects."

Justin Frankel, kendi sitesinden yaptığı açıklamada, Nullsoft'tan ayrılma kararı aldığını açıkladı. Geliştirdiği WASTE adlı kriptolu chat ve P2P yazılımının Nulsoft'un sitesinden kaldırılmasını, kararının nedeni olarak açıklayan Frankel, AOL tarafından özgürlüğünün kısıtlandığını belirtti...

Frankel'in açıklaması:
http://www.1014.org

GNU/Linux Üzerinde Streaming Media

FZ

Neden değerli hard diskimi yığınla MP3/Ogg Vorbis ile doldurayım (ya da bir sürü CD yazıp bunları kataloglamak ile uğraşayım)? Bulunduğum ağ üzerinde birileri bir sunucu kursa ve ben de misal XMMS ile doğrudan oraya bağlanıp paşa paşa müziğimi, radyomu, vs. canlı bağlantı üzerinden dinlesem diyenlerdenseniz ve böyle bir müzik sunucusunun nasıl kurulacağını merak ediyorsanız şu lezzetli makale tam ağzınıza göre: Streaming Audio the Icecast Way

Photoshop Arayüzlü GIMP

ebola

Sizde benim gibi uzun zaman Photoshop kullanmis GIMP'i sevmenize ve kullanmak istemenize rağmen arayüzüne bir türlü uyum sağlayamadı iseniz size güzel bir haber.

Bu sorundan muzdarip bir dostumuz GIMP'e Photoshopun arayüzünü temel alarak yeni bir arayüz yazmış.
Bence güzel olmuş. Tahminimce GIMP'in ilerki sürümlerinde menüde arayüz seçimi diye bir seçenek olacak.

Javacılar İşleri Neden Zorlaştırıyor? (Ya da Perl, Haskell ve Lisp Üstüne)

FZ

Değerli FM üyelerinden ve editörlerinden Recai Oktaş ile programlama dilleri üzerine yazışırken bazı enteresan yazılarla karşılaştım. Konu dillerin bir araç olarak kullanımından bir kültür olarak nasıl bir bakış açısı sunduklarına geldi.

Söz gelimi 5 yılı aşkın süredir Java kodlayan, Java ile ilgili 2 kitabı bulunan ve Jakarta Struts projesinde aktif katılımcı olan James Turner'ın Why Do Java Developers Like to Make Things So Hard? başlıklı yazısı ilk paragraftaki duruma güzel bir örnek teşkil ediyordu. Turner kendince basit olan bir işi, FTP ile dosya yollamayı şifreli hale getirme işini Java ile yapmaya çalışmış ve ciddi bir karmaşa ile karşılaşmıştı. Aynı işi daha az deneyimli olduğu Perl ile yapmaya kalktığında ise...