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

BinarySearch ve MergeSort kullandıysanız kodunuzu kontrol edin!

FZ

Algoritmalar mükemmel olabilir ama uygulamaları her zaman öyle olmayabiliyor!

Google'dan Joshua Bloch, yeni günlük girdilerinden birinde Extra, Extra - Read All About It: Nearly All Binary Searches and Mergesorts are Broken diye konuya girip Java standart kütüphanesinde kendi yazdığı BinarySearch fonksiyonunun nasıl bir hata barındırdığını anlatıyor.

Sun Microsystems'e 11 Mayıs 2004 yılında gönderilen hata raporunun yorum kısmı ise epey eğlenceli: "Should be fixed in the next release. Not for Tiger. xxxxx@xxxxx 2004-05-11 Finally fixing for Mustang. Can't even compute average of two ints is pretty embarrassing."

3 Haziran 2006 Cumartesi günü yollanan yorumlara göre ise, benzer problemden ötürü Solaris'teki look komutu yaklaşık 1 GB'den büyük dosyalar için düzgün çalışmıyor.

StarLogo: The Next Generation

FZ

Dağıtık ve paralel modelleme, simulasyon ve benzeri işler için tam teşekküllü bir ortam sunan StarLogo sisteminin 3 boyutlu ortama yönelik geliştirme yapmayı sağlayan sürümü StarLogo The Next Generation çıktı. MIT tarafından desteklenen ve geliştirilen projenin programlamayı daha geniş ve genç bir kitleye yayması, karmaşık sistemlere dair düşünme ve modelleme yetilerini geliştirmesi hedefleniyor.

Yazılım Geliştirmede Kodlama Stili ve Gösterimin Önemi

maat

Bu yazımızda program yazımında kodlama stilinin öneminden bahsedeceğiz. Geliştirilen yazılımlarda bulunması gereken özelliklerden birisi de "okunabilirlik"tir. İyi bir program sadece yazan kişinin baktığında neyin, nerede nasıl yapıldığını ya da değişkenlerin türlerini anlayabildiği program değil, aksine, kullanılan dilin genel kabul görmüş yazım kurallarına uygun olarak hazırlanmış adeta bakıldığında "şiir gibi okunabilen" programdır. Yazımızın bundan sonraki bölümlerinde kullanılan çeşitli stilleri anlatarak ve örneklerle destekleyerek konumuzu daha da açacağız. Ancak konunun genişliği sebebi ile ancak anahtar noktalara değineceğiz. Anlatılanların daha geniş açıklamaları için kaynaklara bakılabilir.

Unreal'i Yapan Adam Programlama Dillerinin Geleceğini Anlatıyor

FZ

Epic Games'ten Tim Sweeney, SIGPLAN ve SIGACT tarafından 33.sü düzenlenen Programlama Dillerinin İlkeleri Sempozyumunda The next mainstream programming language: a game developer's perspective başlıklı bir konuşma gerçekleştirdi.

kernelguys.org: Türkçe Sistem Programlama

raistlinthewiz

Birsüre önce almış olduğum domain "kernelguys.org"u değerlendirmeye karar verdim. Aslında Mambo kurulumu yapmayı düşünürken bi anda kendimi vbulletin bir sistemle uğraşırken buldum.

Amaç?

http://kernelguys.org'un amacı Türkçe sistem programlama sunabilmek ve tabii ki eğer mümkün olursa bu konuyla ilgilenenleri bir araya getirebilmek.

Hiçbir şekilde kernelguys "hadi yeni bir forum kuralım" diyerek kurulmuş bir site değildir; vbulletin ihtiyaçlarımızı karşıladığı için seçilmiştir. Şu anda siteye aktif olarak içerik eklemekte ve bu süreçte diğer arkadaşlardan da destek beklemeyiz.