Aracılığıyla paylaş


Python'ı betik oluşturma ve otomasyon için Windows'ta kullanmaya başlayın

Aşağıda, geliştirici ortamınızı ayarlamaya ve Windows'da dosya sistemi işlemlerini betik oluşturmak ve otomatikleştirmek için Python'ı kullanmaya başlamanıza yönelik adım adım bir kılavuz yer alır.

Uyarı

Bu makale, Windows merkezli bir yaklaşımdan dosya sisteminizde arama yapma, İnternet'e erişme, dosya türlerini ayrıştırma gibi platformlar genelinde görevleri otomatikleştirebilen Python'daki yararlı kitaplıklardan bazılarını kullanacak şekilde ortamınızı ayarlamayı kapsar. Windows'a özgü işlemler için, Python için C uyumlu bir harici fonksiyon kütüphanesi olan ctypes , Windows kayıt defteri API'sini Python'a açan fonksiyonlar içeren winreg ve Python'dan Windows Çalışma Zamanı API'lerine erişmeyi sağlayan Python/WinRT 'ye göz atın.

Geliştirme ortamınızı ayarlama

Dosya sistemi işlemlerini gerçekleştiren betikler yazmak için Python kullanırken,Microsoft Store'dan Python'ı yüklemenizi öneririz. Microsoft Store aracılığıyla yükleme, temel Python3 yorumlayıcısını kullanır, ancak otomatik güncelleştirmeler sağlamanın yanı sıra geçerli kullanıcı için PATH ayarlarınızı ayarlar (yönetici erişimi gereksinimini ortadan kaldırarak).

Windows'da web geliştirme için Python kullanıyorsanız, Linux için Windows Alt Sistemi'ni kullanarak farklı bir kurulum yapmanızı öneririz. Kılavuzumuzda adım adım yönergelerimizi bulun: Windows üzerinde web geliştirme için Python'ı kullanmaya başlayın. Python'da yeniyseniz kılavuzumuzu deneyin: yeni başlayanlar için Windows'ta Python'ı kullanmaya başlama. Bazı gelişmiş senaryolar için (Python'ın yüklü dosyalarına erişmeniz/bunları değiştirmeniz, ikili dosyaların kopyalarını oluşturmanız veya Python DLL'lerini doğrudan kullanmanız gibi), belirli bir Python sürümünü doğrudan python.org'dan indirmeyi veya Anaconda, Jython, PyPy, WinPython, IronPython gibi alternatif biryüklemeyi düşünebilirsiniz. Bunu yalnızca alternatif bir uygulama seçmek için belirli bir nedene sahip daha gelişmiş bir Python programcısıysanız öneririz.

Python'ı yükleme

Microsoft Store'u kullanarak Python yüklemek için:

  1. Başlangıç menüsüne gidin (sol alt Windows simgesi), "Microsoft Store" yazın, mağazayı açmak için bağlantıyı seçin.

  2. Mağaza açıldıktan sonra sağ üst menüden Arama seçin ve "Python" yazın. Uygulamalar altındaki sonuçlardan hangi Python sürümünü kullanmak istediğinizi seçin. Kullanmamak için bir nedeniniz yoksa en son sürümü kullanmanızı öneririz (örneğin, üzerinde çalışmayı planladığınız önceden var olan bir projede kullanılan sürümle uyumlu hale getirme). Hangi sürümü yüklemek istediğinizi belirledikten sonra al seçeneğini seçin.

  3. Python indirme ve yükleme işlemini tamamladıktan sonra, Başlat menüsünü (sol alt Windows simgesi) kullanarak Windows PowerShell'i açın. PowerShell açıldıktan sonra python3'in makinenize yüklendiğini onaylamak için Python --version girin.

  4. Python'ın Microsoft Store yüklemesi, standart paket yöneticisi olan pipiçerir. Pip, Python standart kitaplığının parçası olmayan ek paketleri yüklemenize ve yönetmenize olanak tanır. Paketleri yüklemek ve yönetmek için pip'i de kullanabileceğinizi onaylamak için pip --versiongirin.

Visual Studio Code'u yükleme

VS Code'u metin düzenleyiciniz /tümleşik geliştirme ortamınız (IDE) olarak kullanarak IntelliSense (kod tamamlama yardımı), linting (kodunuzda hata oluşmasını önlemeye yardımcı olur), Hata ayıklama desteği (kodu çalıştırdıktan sonra kodunuzda hataları bulmanıza yardımcı olur), Kod parçacıkları (küçük yeniden kullanılabilir kod blokları için şablonlar), ve Birim testi (kodunuzun arabirimini farklı giriş türleriyle test etme).

Windows için VS Code'u indirin ve yükleme yönergelerini izleyin: https://code.visualstudio.com.

Microsoft Python uzantısını yükleme

VS Code destek özelliklerinden yararlanmak için Microsoft Python uzantısını yüklemeniz gerekir. Daha fazla bilgi edinin.

  1. Ctrl+Shift+X girerek VS Code Uzantıları penceresini açın (veya menüyü kullanarak GörünümUzantıları).

  2. Pazar Yeri'nde Üstteki Uzantıları Ara kutusuna şunu girin: Python.

  3. Microsoft uzantısı tarafından Python (ms-python.python) bulun ve yükle düğmesini yeşili seçin.

TÜMLEŞIK PowerShell terminalini VS Code'da açma

VS Code, Kod düzenleyicinizle komut satırı arasında sorunsuz bir iş akışı oluşturarak PowerShell ile Python komut satırı açmanıza olanak tanıyan yerleşik terminal içerir.

  1. Terminali VS Code'da açın, GörünümTerminalseçeneğini belirleyin veya alternatif olarak Ctrl+' (backtick karakterini kullanarak) kısayolunu kullanın.

    Uyarı

    Varsayılan terminal PowerShell olmalıdır, ancak değiştirmeniz gerekirse komut paletini girmek için Ctrl+Shift+P tuşlarını kullanın. terminal girin: Varsayılan Kabuk'ni seçtiğinizde PowerShell, Komut İstemi, WSL gibi terminal seçeneklerinin listesi görüntülenir. Kullanmak istediğiniz terminali seçin ve yeni bir terminal oluşturmak için Ctrl+Shift+' (backtick kullanarak) girin.

  2. VS Code terminalinizin içinde şunu girerek Python'ı açın: python

  3. Şunu girerek Python yorumlayıcısını deneyin: print("Hello World"). Python , "Hello World" deyiminizi döndürür.

    VS Code'da Python komut satırı

  4. Python'dan çıkmak için exit()girebilir, quit()veya Ctrl-Z'yi seçebilirsiniz.

Git'i yükleme (isteğe bağlı)

Python kodunuz üzerinde başkalarıyla işbirliği yapmayı veya projenizi açık kaynak bir sitede (GitHub gibi) barındırmayı planlıyorsanız VS Code, Gitile sürüm denetimini destekler. VS Code'daki Kaynak Denetimi sekmesi tüm değişikliklerinizi izler ve doğrudan kullanıcı arabiriminde yerleşik olarak ortak Git komutlarına (ekleme, işleme, gönderme, çekme) sahiptir. Kaynak Denetim masasına güç vermek için önce Git'i yüklemeniz gerekir.

  1. Windows için Git'i git-scm web sitesindenindirin ve yükleyin.

  2. Git yüklemenizin ayarları hakkında size bir dizi soru soran bir Yükleme Sihirbazı eklenmiştir. Bir şeyi değiştirmek için belirli bir nedeniniz yoksa tüm varsayılan ayarları kullanmanızı öneririz.

  3. Git ile daha önce hiç çalışmadıysanız GitHub Kılavuzları kullanmaya başlamanıza yardımcı olabilir.

Dosya sistemi dizininizin yapısını görüntülemek için örnek betik

Yaygın sistem yönetimi görevleri çok zaman alabilir, ancak Python betiğiyle bu görevleri hiç zaman almamaları için otomatikleştirebilirsiniz. Örneğin, Python bilgisayarınızın dosya sisteminin içeriğini okuyabilir ve dosyalarınızın ve dizinlerinizin ana hatlarını yazdırma, klasörleri bir dizinden diğerine taşıma veya yüzlerce dosyayı yeniden adlandırma gibi işlemler gerçekleştirebilir. Normalde, bunları el ile gerçekleştiriyorsanız, bunlar gibi görevler çok zaman alabilir. Bunun yerine Python betiği kullanın!

Şimdi bir dizin ağacını gösteren ve dizin yapısını görüntüleyen basit bir betikle başlayalım.

  1. Başlangıç menüsünü (sol alt Windows simgesi) kullanarak PowerShell'i açın.

  2. Projeniz için bir dizin oluşturun: mkdir python-scripts, ardından şu dizini açın: cd python-scripts.

  3. Örnek betiğimizle kullanmak için birkaç dizin oluşturun:

    mkdir food, food\fruits, food\fruits\apples, food\fruits\oranges, food\vegetables
    
  4. Betiğimizle kullanmak için bu dizinlerde birkaç dosya oluşturun:

    new-item food\fruits\banana.txt, food\fruits\strawberry.txt, food\fruits\blueberry.txt, food\fruits\apples\honeycrisp.txt, food\fruits\oranges\mandarin.txt, food\vegetables\carrot.txt
    
  5. Python betikleri dizininizde yeni bir python dosyası oluşturun:

    mkdir src
    new-item src\list-directory-contents.py
    
  6. Şu girişi yaparak projenizi VS Code'da açın: code .

  7. Ctrl+Shift+E girerek VS Code Dosya Gezgini penceresini açın (veya menüyü kullanarak GörünümGezgini) gidin ve yeni oluşturduğunuz list-directory-contents.py dosyasını seçin. Microsoft Python uzantısı bir Python yorumlayıcısını otomatik olarak yükler. VS Code pencerenizin alt kısmına hangi yorumlayıcının yüklendiğini görebilirsiniz.

    Uyarı

    Python yorumlanmış bir dildir, yani fiziksel bir bilgisayara öykünerek sanal makine işlevi görür. Kullanabileceğiniz farklı Python yorumlayıcı türleri vardır: Python 2, Python 3, Anaconda, PyPy vb. Python kodunu çalıştırmak ve Python IntelliSense'i almak için VS Code'a hangi yorumlayıcının kullanılacağını söylemeniz gerekir. Farklı bir şey seçmek için belirli bir nedeniniz yoksa VS Code'un varsayılan olarak seçtiği yorumlayıcıya (bizim durumumuzda Python 3) bağlı kalmanızı öneririz. Python yorumlayıcısını değiştirmek için, VS Code pencerenizin alt kısmındaki mavi çubukta görüntülenen yorumlayıcıyı seçin veya Komut Paleti (Ctrl+Shift+P) öğesini açın ve Pythonkomutunu girin: Yorumlayıcıöğesini seçin. Bu, şu anda yüklediğiniz Python yorumlayıcılarının listesini görüntüler. Python ortamlarını yapılandırma hakkında daha fazla bilgi edinin.

    VS Code'de Python yorumlayıcı seçme

  8. Aşağıdaki kodu list-directory-contents.py dosyanıza yapıştırın ve ardından kaydet'i seçin.

    import os
    
    root = os.path.join('..', 'food')
    for directory, subdir_list, file_list in os.walk(root):
        print('Directory:', directory)
        for name in subdir_list:
            print('Subdirectory:', name)
        for name in file_list:
            print('File:', name)
        print()
    
  9. VS Code tümleşik terminalini açın (backtick karakterini kullanarakCtrl+') ve Python betiğinizi kaydettiğiniz src dizinini girin:

    cd src
    
  10. Betiği PowerShell'de aşağıdakilerle çalıştırın:

    python3 .\list-directory-contents.py
    

    Şuna benzer bir çıkış görmeniz gerekir:

    Directory: ..\food
    Subdirectory: fruits
    Subdirectory: vegetables
    
    Directory: ..\food\fruits
    Subdirectory: apples
    Subdirectory: oranges
    File: banana.txt
    File: blueberry.txt
    File: strawberry.txt
    
    Directory: ..\food\fruits\apples
    File: honeycrisp.txt
    
    Directory: ..\food\fruits\oranges
    File: mandarin.txt
    
    Directory: ..\food\vegetables
    File: carrot.txt
    
  11. Bu komutu doğrudan PowerShell terminalinize girerek bu dosya sistemi dizin çıkışını kendi metin dosyasına yazdırmak için Python kullanın: python3 list-directory-contents.py > food-directory.txt

Tebrikler! Oluşturduğunuz dizini ve dosyaları okuyan ve python kullanarak dizin yapısını kendi metin dosyasına görüntüleyen ve yazdıran bir otomatik sistem yönetim betiği yazdınız.

Uyarı

Python 3'ü Microsoft Store'dan yükleyemiyorsanız, bu sorunu, örnek betiğin yolunu nasıl düzenleyeceğinize dair bir örnek olarak inceleyin.

Dizindeki tüm dosyaları değiştirmek için örnek betik

Bu örnek, yeni oluşturduğunuz dosyaları ve dizinleri kullanır ve dosyanın son değiştirme tarihini dosya adının başına ekleyerek dosyaların her birini yeniden adlandırır.

  1. python betikleri dizininizdeki src klasörünün içinde betiğiniz için yeni bir Python dosyası oluşturun:

    new-item update-filenames.py
    
  2. update-filenames.py dosyasını açın, dosyaya aşağıdaki kodu yapıştırın ve kaydedin:

    Uyarı

    os.getmtime, kolayca okunamayan tiklerde bir zaman damgası döndürür. Önce standart bir tarih saat dizesine dönüştürülmelidir.

    import datetime
    import os
    
    root = os.path.join('..', 'food')
    for directory, subdir_list, file_list in os.walk(root):
        for name in file_list:
            source_name = os.path.join(directory, name)
            timestamp = os.path.getmtime(source_name)
            modified_date = str(datetime.datetime.fromtimestamp(timestamp)).replace(':', '.')
            target_name = os.path.join(directory, f'{modified_date}_{name}')
    
            print(f'Renaming: {source_name} to: {target_name}')
    
            os.rename(source_name, target_name)
    
  3. update-filenames.py betiğinizi çalıştırarak test edin: python3 update-filenames.py ve ardından list-directory-contents.py betiğinizi yeniden çalıştırın: python3 list-directory-contents.py

  4. Şuna benzer bir çıkış görmeniz gerekir:

    Renaming: ..\food\fruits\banana.txt to: ..\food\fruits\2019-07-18 12.24.46.385185_banana.txt
    Renaming: ..\food\fruits\blueberry.txt to: ..\food\fruits\2019-07-18 12.24.46.391170_blueberry.txt
    Renaming: ..\food\fruits\strawberry.txt to: ..\food\fruits\2019-07-18 12.24.46.389174_strawberry.txt
    Renaming: ..\food\fruits\apples\honeycrisp.txt to: ..\food\fruits\apples\2019-07-18 12.24.46.395160_honeycrisp.txt
    Renaming: ..\food\fruits\oranges\mandarin.txt to: ..\food\fruits\oranges\2019-07-18 12.24.46.398151_mandarin.txt
    Renaming: ..\food\vegetables\carrot.txt to: ..\food\vegetables\2019-07-18 12.24.46.402496_carrot.txt
    
    PS C:\src\python-scripting\src> python3 .\list-directory-contents.py
    ..\food\
    Directory: ..\food
    Subdirectory: fruits
    Subdirectory: vegetables
    
    Directory: ..\food\fruits
    Subdirectory: apples
    Subdirectory: oranges
    File: 2019-07-18 12.24.46.385185_banana.txt
    File: 2019-07-18 12.24.46.389174_strawberry.txt
    File: 2019-07-18 12.24.46.391170_blueberry.txt
    
    Directory: ..\food\fruits\apples
    File: 2019-07-18 12.24.46.395160_honeycrisp.txt
    
    Directory: ..\food\fruits\oranges
    File: 2019-07-18 12.24.46.398151_mandarin.txt
    
    Directory: ..\food\vegetables
    File: 2019-07-18 12.24.46.402496_carrot.txt
    
    
  5. Python'u kullanarak yeni dosya sistemi dizin adlarını, son değiştirilen zaman damgasını başa ekleyerek kendi metin dosyasına yazdırmak için bu komutu doğrudan PowerShell terminalinize girin: python3 list-directory-contents.py > food-directory-last-modified.txt

Temel sistem yönetim görevlerini otomatikleştirmek için Python betiklerini kullanma hakkında birkaç eğlenceli şey öğrendiğinizi umuyoruz. Tabii ki bir sürü şey daha var, ama umarız bu sizi doğru adımla başlatmış olur. Aşağıda öğrenmeye devam etmek için birkaç ek kaynak paylaştık.

Ek kaynaklar