arşiv

Salı, 13 Nis 2010 için arşiv

Python: Windows’ta Türkçe Karakter Sorunu

Salı, 13 Nis 2010

Diyelim ki elimizde şöyle bir şey var:

#-*- coding: cp1254 -*-
 
def kayit_ekle(isim, soyisim, sehir, meslek, tel, adres):
    kayit = {}
 
    kayit["%s %s" %(isim, soyisim)] = [sehir, meslek, tel, adres]
 
    print "\nBağlantı bilgileri kayıtlara eklendi!\n"
 
    for k, v in kayit.items():
        print k
        print "-"*len(k)
        for i in v:
            print i
 
kayit_ekle(isim = "Abdurrahman",
           soyisim = "Çelebi",
           meslek = "Öğretmen",
           tel = "0212 123 45 67",
           sehir = "İstanbul",
           adres = "Çeliktepe")

Bu kodları (utf-8 ile) GNU/Linux’ta çalıştırırken herhangi bir Türkçe karakter sorunuyla karşılaşmıyoruz. Ancak aynı kodları Windows’ta çalıştırmak istediğimizde şöyle bir çıktı alıyoruz:

Ba­lant² bilgileri kay²tlara eklendi!
 
Abdurrahman Ãelebi
------------------
¦stanbul
Í­retmen
0212 123 45 67
Ãeliktepe

Gördüğünüz gibi bütün Türkçe karakterler birbirine girmiş durumda. Bunun temel sebebi Windows’ta komut satırının öntanımlı yazı tipinin unicode karakterleri gösterememesi. Yani aslında komut satırının kendisi Türkçe karakterleri düzgün bir şekilde algılayabiliyor. Ancak kullanılan öntanımlı yazı tipi bu karakterlerin düzgün bir şekilde gösterilmesine müsaade etmiyor… Ayrıca ortaya çıkan bu durumda, MS-DOS’un öntanımlı kod sayfasının da etkisi var.

Yukarıdaki sorundan kurtulmak için şu işlemleri yapmamız gerekiyor:

1. Önce kullanılan kod sayfasını değiştiriyoruz:

chcp 1254

2. Ardından pencere başlığına sağ tıklayıp “özellikler”e giriyoruz.

3. Yazı Tipi sekmesi içinde yazı tipini “Lucida console” olarak değiştiriyoruz.

4. Tamam’a basıyoruz.

5. Karşımıza çıkan pencerede, “özellikleri sadece geçerli pencereye uygula” seçeneğini işaretliyoruz.

Şimdi en başta verdiğimiz betiği çalıştırdığımızda şu çıktıyı alıyoruz:

Bağlantı bilgileri kayıtlara eklendi!
 
Abdurrahman Çelebi
------------------
İstanbul
Öğretmen
0212 123 45 67
Çeliktepe

Python, Teknik , , ,

Cımbız-0.3 + .pisi Paketi

Salı, 13 Nis 2010

TCMB’den aldığı döviz kurlarını kullanıcıya gösteren programımız CIMBIZ, .deb ve .exe paketlerinin ardından .pisi’sine de kavuştu.  Cımbız’ın pisi paketini http://istihza.com/programlar/icindekiler_programlar.html adresinden indirebilirsiniz.

Cımbız’ın pisi paketini hazırlayan Pardus-Linux.Org yöneticisi Erdem Artan’a teşekkür ederim.

istihza.com, Python, Yazılım , ,