1. Ayyıldız Tim forumu Hariç Hiç Bir şekilde Rütbeli Oldugunu İddaa edenlere inanmayınız..⠀ Ayyıldız Tim Adına Sizden Bilgi Belge TC Kimlik Vb Evrak İsteyenlere Asla Bilgilerinizi Vermeyiniz.

Python Ile Yazılan Programları Exe Haline Getirme

'Python' forumunda note tarafından 15 Eylül 2017 tarihinde açılan konu

  1. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Merhaba. Bu yazıda Python ile yazdığımız programları nasıl exe haline getirebiliriz konusundan bahsedeceğim. Yazıyı okumadan önce, bilmenizi istediğim konu cmd. Az çok cmd hakkında bilgi edinmeniz gerekiyor. Çünkü burada birtakım komutlar kullanacağız. Eğer cmd hakkında bilginiz yoksa, lütfen önce bu eksiğinizi tamamlayın.

    Konumuza gelelim. Python ile yazdığımız programlar .py uzantılı olur ve bunu başka bir bilgisayarda çalıştırmak için o bilgisayarda Python kurulu olması gerekir. Ancak exe haline getirirsek, bunu başka bilgisayarda Python olmadan çalıştırmamız mümkün. Py uzantılı dosyaları exe haline getirebilmek için Python'da 3 kütüphane var.

    1) cx_frezee
    2) py2exe
    3) pyinstaller

    Biz burada cx_frezee kullanacağız. https://pypi.python.org/pypi/cx_Freeze/4.3.4 adresinden sisteminize ve Python sürümünüze uygun olan exe dosyasını indirin ve kurun. Artık exe dosyası oluşturmaya başlayabiliriz.

    İlk olarak temiz olması açısından, Masaüstüne bir klasör açın ve adını note koyun. İstediğiniz ismi koyabilirsiniz ama benim note yazdığım yerleri siz kendi klasör adınız olarak kullanın.

    Şimdi oluşturduğumuz klasör içine .py uzantılı dosyanızı koyun. Benim dosyam note.py . Daha sonra, aynı klasör içine bir setup.py dosyası oluşturun içine şunları yazın.

    Eğer programınız konsol üzerinde çalışıyorsa, aşağıdaki kodları setup.py dosyasına yazın ve kaydedin. Tabi içinde belirttiğim yerleri kendinize göre değiştirin.

    PHP:
    # -*- coding: utf-8 -*-

    from cx_Freeze import setupExecutable

    executables 
    = [
        
    Executable('note.py'# dosyanızın ismi. Ben note.py yaptım.
    ]

    setup(name='Note'# programın görünmesini istediğiniz ismi
          
    version='0.1'# sürüm
          
    description='note ayyildiz tim'# açıklama kısmı. Türkçe karakter kullanmamaya çalışın
          
    executables=executables
          
    )
    Eğer programınız bir Tkinter programı ise, aşağıdaki kodları setup.py dosyasına yazın ve kaydedin. Belirttiğim yerleri kendinize göre değiştirin.

    PHP:
    # -*- coding: utf-8 -*-

    import sys
    from cx_Freeze import setup
    Executable

    base 
    None
    if sys.platform == 'win32':
        
    base 'Win32GUI'

    executables = [
        
    Executable('note.py'base=base# dosyanızın ismi
    ]

    setup(name='Note'# görünmesini istediğiniz dosya ismi
          
    version='0.1'# sürüm
          
    description='note ayyildiz tim'# açıklama kısmı. Türkçe karakter kullanmamaya çalışın
          
    executables=executables
          
    )

    Dosyaları kaydettikten sonra elimizde iki dosya var. Birisi bizim py uzantılı programımız, diğeri ise setup.py dosyamız. Şimdi cmd ekranını açalım ve aşağıdaki komut ile Masaüstüne oluşturduğumuz note (klasör adını ne koyduysanız) klasörüne gelelim.

    Kod:
    cd %USERPROFILE%\Desktop\note
    
    Olmazsa;
    Kod:
    cd %USERPROFILE%\Masaüstü\note
    
    Şimdi burada, cmd ekranına aşağıdaki komutu yazalım ve exe dosyasının oluşturulmasını bekleyelim.

    Kod:
    python setup.py install
    
    Eğer bir sıkıntı çıkmazsa, klasörümüzde build adında yeni bir klasör oluşmuş olacak ve exe dosyamız bunun içindeki klasörde oluşturulmuş olacaktır. Klasörü açıp bakarsanız, exe dosyasının yanında birçok dosya olduğunu görürsünüz. Bunun sebebi, programımızın bu yardımcı dosyalar yardımı ile çalışması. Bu yüzden hepsini bir arada bulundurmak gerekiyor. Hepsini bir klasör içinde başka bilgisayarlarda Python olmadan çalıştırabiliriz.

    Bu kadar. Elimden geldiği kadar basit anlatmaya çalıştım. Bir sorunuz olursa sorabilirsiniz. İyi forumlar...
     
    1302mai, Orion-Pax, Semtex ve 18 kişi daha bunu beğendi.
  2. Flyingfinger Atıldı

    • Guest
    Katılım:
    18 Şubat 2017
    Mesaj:
    5,094
    Alınan Beğeniler:
    10,543

    Özel Mesaj
    ellerine saglik devrem guzel anlatim olmus sikinti yasarsam belirtirim burda :).
     
    sebuhi ve note bunu beğendi.
  3. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Teşekkür ederim. Artık bunlarla uğraşmayı bırakıp Python bilgini geliştirirsin herhalde
     
    Orion-Pax ve Flyingfinger bunu beğendi.
  4. Flyingfinger Atıldı

    • Guest
    Katılım:
    18 Şubat 2017
    Mesaj:
    5,094
    Alınan Beğeniler:
    10,543

    Özel Mesaj
    tabii .suan liste olusturma videosunu izliyorum :)
     
    note bunu beğendi.
  5. Cyberstudent Atıldı

    • Guest
    Katılım:
    10 Kasım 2016
    Mesaj:
    3,132
    Alınan Beğeniler:
    4,847

    Özel Mesaj
    Flyingfinger bunu beğendi.
  6. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Orion-Pax bunu beğendi.
  7. sebuhi Atıldı

    • Guest
    Katılım:
    22 Şubat 2017
    Mesaj:
    4,235
    Alınan Beğeniler:
    4,062

    Özel Mesaj
    Eline sağlık devrem:) 1 Sorum var
     
    note bunu beğendi.
  8. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Buyrun tertip sorabilirsin. Bildiğim kadarı ile cevaplamaya çalışırım
     
    Orion-Pax ve sebuhi bunu beğendi.
  9. Cyberstudent Atıldı

    • Guest
    Katılım:
    10 Kasım 2016
    Mesaj:
    3,132
    Alınan Beğeniler:
    4,847

    Özel Mesaj
    Özür dilerim :( birdaha olmaz
     
    sebuhi ve note bunu beğendi.
  10. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Estağfurullah. Yapma demiyorum sadece bunu yaparken biraz daha dikkat demek istiyorum.
     
    Orion-Pax ve Cyberstudent bunu beğendi.
  11. sebuhi Atıldı

    • Guest
    Katılım:
    22 Şubat 2017
    Mesaj:
    4,235
    Alınan Beğeniler:
    4,062

    Özel Mesaj
    Tertip Şimdi Ben bir uygulama yapdım ama sonda bir sorunum çıktı. Mesela 2 button var 1 Textboxt. Button1-in click kısmına İf eyet textboxt-a 123 girilirse Button2 aktif olsun eyvallah burasını yapdım. Ama 2-ci defa programı açdığımda artık Button 2aktif gelsin artık her defasında 123 yazmak zorunda kalmayım.
     
  12. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Bunun için, şöyle bir mantık kullanabilirsin. Bir dosya olsun ve bu dosya kontrol.txt olsun. Ve içinde 0 yazsın yani program ilk kez açılmış. Sonra eğer 123 girilirse, dosyanın içindeki 0'ı 1 yaparsın ve program tekrar açıldığında bu dosyanın içine bakar. Eğer 1 yazıyorsa aktif olsun, değilse kapalı olsun. Bunu mantık olarak örnek verdim. Bu durum için en uygun şey veritabanı kullanmak. Hem daha güvenli olur. Böyle anlatmamın sebebi mantığı anlatmak. Bilgilerin kontrol edileceği bir tabanın olması
     
    Orion-Pax ve sebuhi bunu beğendi.
  13. sebuhi Atıldı

    • Guest
    Katılım:
    22 Şubat 2017
    Mesaj:
    4,235
    Alınan Beğeniler:
    4,062

    Özel Mesaj
    Devrem peki sen dediyin gibi Sql veritabanına o işlemi nasıl yapdıracaz?
     
    note bunu beğendi.
  14. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Hangi dili kullandığını bilmiyorum. Pythonda sqlite3 kullanılıyor
     
    Orion-Pax bunu beğendi.
  15. sebuhi Atıldı

    • Guest
    Katılım:
    22 Şubat 2017
    Mesaj:
    4,235
    Alınan Beğeniler:
    4,062

    Özel Mesaj
    C# ve Python birazda C ile yardımlaşa bir Türkce Havij yapıyoruz.
     
  16. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Öncelikle C# hiç sevmem onu söyleyeyim :) Neyse dediğim gibi bunun için araman gereken şey, C# veritabanı bağlantısı kurmak ve kod çalıştırmak olacaktır. Bu konu benim bilgim dışında olduğu için, ben sadece neyi araman gerektiğini söyleyebilirim. Kolay gelsin :)
     
    Orion-Pax, Alparslan5545 ve sebuhi bunu beğendi.
  17. sebuhi Atıldı

    • Guest
    Katılım:
    22 Şubat 2017
    Mesaj:
    4,235
    Alınan Beğeniler:
    4,062

    Özel Mesaj
    Teşekkürler. Konunu kirletdiyim için özür dilerim.
     
    note bunu beğendi.
  18. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Yok ne kirletmesi. Rica ederim değer verip sorduğun için...
     
    Orion-Pax bunu beğendi.
  19. cdrlife Guest

    • Guest
    Katılım:
    28 Nisan 2017
    Mesaj:
    99
    Alınan Beğeniler:
    95

    Özel Mesaj
    Eline sağlık tertip. Güzel konu
     
    note bunu beğendi.
  20. note Atıldı

    • Guest
    Katılım:
    20 Nisan 2017
    Mesaj:
    3,716
    Alınan Beğeniler:
    6,798

    Özel Mesaj
    Teşekkür ederim
     
    Orion-Pax ve cdrlife bunu beğendi.

Bu Sayfayı Paylaş