Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu makalede , Visual Studio'da Python ile çalışma öğretici serisinin 4. adımı verilmiştir.
Visual Studio projeleri yönetme, zengin bir düzenleme deneyimi, Etkileşimli Pencere ve Python kodu için tam özellikli hata ayıklama özellikleri sağlar. Bu öğretici serisinin 4. adımında, kodunuzu adım adım çalıştırmak için Hata Ayıklayıcı'yı kullanarak bir döngünün her yinelemesi dahil tüm aşamaları inceleyebilirsiniz. Hata Ayıklayıcı'da, belirli koşullar doğru olduğunda programınızı duraklatabilirsiniz. Program duraklatıldığında herhangi bir noktada tüm program durumunu inceleyebilir ve değişkenlerin değerini değiştirebilirsiniz. Bu tür eylemler, program hatalarını izlemek için gereklidir ve aynı zamanda tam program akışını izlemek için yararlı yardımlar sağlar.
Eğitimin 4. Adımında şunları öğreneceksiniz:
- Visual Studio'da Hata Ayıklayıcı'da Python kodu çalıştırma
- Kesme noktalarını ve koşulları ayarlama
- Program durumunu inceleme ve değişkenleri değiştirme
- Hata Ayıklayıcı pencerelerini ve eylemlerini keşfetme
Önkoşullar
- Aşağıdaki adımların yürütüldüğü bir öğreticinin 2. Adım: Python kodu yazma ve çalıştırma ve 3. Adım: Etkileşimli REPL penceresini kullanma aşamalarına ait olan kodun bulunduğu bir Python dosyası (.py) içeren bir Python uygulama projesi.
Python dosyasını hazırlama
Hata ayıklama alıştırmasına hazırlanmak için python proje dosyanızı daha sağlam kod içerecek şekilde güncelleştirmek için şu adımları izleyin:
Python proje dosyanızı (.py) düzenleyicide açın.
Dosyadaki kodu aşağıdaki kodla değiştirin. Kodun bu sürümü, hata ayıklayıcıda
make_dot_stringayrık adımlarını inceleyebilmeniz için işlevi genişletir.fordöngüsü birmainişlevine taşınır ve ardındanmainişlevini çağırarak açıkça çalıştırılır.from math import cos, radians # Create a string with spaces proportional to a cosine of x in degrees def make_dot_string(x): rad = radians(x) # cos works with radians numspaces = int(20 * cos(rad) + 20) # Scale to 0-40 spaces st = ' ' * numspaces + 'o' # Place 'o' after the spaces return st def main(): for i in range(0, 1800, 12): s = make_dot_string(i) print(s) main()
Hata ayıklamayı başlatma
Artık Hata Ayıklayıcı'da güncelleştirilmiş Python kodunuzu denetlemeye başlamaya hazırsınız.
Araç çubuğunda Hata Ayıklamayı Başlat> seçeneğini seçerek veya F5 klavye kısayolunu kullanarak kodun düzgün çalıştığını onaylayın. Bu komutlar kodu Hata Ayıklayıcı'da çalıştırır.
Hata Ayıklayıcı herhangi bir sorun algılamaz, bu nedenle program başarıyla çalışır. Bir çıkış penceresi açılır ve kosinüs dalga deseninin birkaç yinelemesini görürsünüz. Çıkış penceresini kapatmak için herhangi bir anahtarı seçin.
Tip
Visual Studio'nun önceki sürümlerinde, program tamamlandığında çıkış penceresini otomatik olarak kapatabilirsiniz. Araçlar>Seçenekleri'ni seçin, Python>Hata Ayıklama düğümünü genişletin ve İşlem normal şekilde çıktığında girişi bekle seçeneğini temizleyin.
Aşağıdaki yöntemlerden birini kullanarak döngü deyiminde
forbir kesme noktası ayarlayın:- Kod satırı için sol kenar boşluğunda seçin.
- Kod satırına sağ tıklayın ve Kesme Noktası> Ekle'yi seçin.
- Ekleme işaretini kod satırına yerleştirin ve Hata Ayıklama>Kesme Noktası GeçişIni Seç'i seçin (veya F9 klavye kısayolunu kullanın).
Kesme noktaları, program durumunu inceleyebilmeniz için işaretli bir noktada kodun yürütülmesini durdurur. Belirli bir kesme noktası olan her satırda kırmızı bir nokta görünür.
Hata Ayıklayıcıyı yeniden başlatın (F5). Programın çalışan kodu, ayarlanan kesme noktasıyla birlikte satırda durur. Artık çağrı yığınını inceleyebilir ve çalışan program kodunun bu durumunun değişkenlerini inceleyebilirsiniz.
Visual Studio, aşağıdaki pencereler de dahil olmak üzere program kodunuzu ve yürütme verilerinizi gözlemlemek için birçok yol sağlar:
- Çağrı yığını, program koduna göre işlev ve yöntem çağrılarının geçmişini gösterir.
- Kapsam içindeki tanımlı değişkenler Otomatikler penceresinde görünür.
- Yereller görünümü, Visual Studio'nun geçerli kapsamda bulduğu tüm değişkenleri (işlevler dahil) kodda tanımlanmadan önce bile gösterir.
Kullanılabilir pencerelerin ve eylemlerin tam listesini görmek içinWindows> seçin.
Bir kesme noktasıyla karşılaşıldığında program durumunuzu görüntülemek için Hata Ayıklayıcı pencerelerini açabilirsiniz:
Hata Ayıklayıcı eylemlerini kullanma
Visual Studio bir kesme noktasında kod yürütmeyi durdurduğunda, yeniden kesmeden önce kodunuzda adım adım ilerleyebileceğiniz veya kod bloklarını çalıştırmak için kullanabileceğiniz birkaç komut vardır. Komutlar, Visual Studio'da Hata Ayıklayıcı araç çubuğu, Hata Ayıklama menüsü, kod düzenleyicisinde sağ tıklama bağlam menüsü ve klavye kısayolları gibi birkaç yerde kullanılabilir.
Visual Studio penceresinin üst kısmındaki Hata Ayıklayıcı araç çubuğu en yaygın hata ayıklama komutlarına hızlı erişim sağlar:
Aşağıdaki tablo, araç çubuğunda soldan sağa göründüğü gibi bu komutları özetler.
| Eylem | Shortcut | Description |
|---|---|---|
| Devam etmek | F5 | Sonraki kesme noktasına ulaşana kadar veya program tamamlanıncaya kadar kodu çalıştırın. |
| Tümünü Kes | Ctrl+Alt+Break | Uzun süre çalışan bir programı duraklat. |
| Hata Ayıklamayı Durdur | Shift+F5 | Programı mevcut noktada durdurun ve Hata Ayıklayıcı'dan çıkın. |
| Yeniden Başlatma | Ctrl+Shift+F5 | Programı geçerli noktada durdurun ve Hata Ayıklayıcı'da program yürütmesini baştan başlatın. |
| Sonraki Deyimi Göster | Alt+Num+\ | Kodda çalıştırmak için sonraki deyime dönün. Bu komut, kodunuzda Hata Ayıklayıcı'nın durdurulduğu yeri bulmanıza yardımcı olur. |
| Adım At | F11 | Sonraki deyimi çalıştırın ve durdurun. Eğer sonraki ifade bir işlev çağrısıysa, Hata Ayıklayıcı işlevin içine adım atar ve ilk satırda durur. |
| Adım Atla | F10 | Sonraki ifadeyi çalıştırın, bir işleve (tüm kodunu çalıştırarak) çağrı yapın ve herhangi bir dönüş değerini uygulayın. Bu komut, hata ayıklamanız gerekmeyen işlevleri kolayca atlamanızı sağlar. |
| Dışarı Çık | Shift+F11 | Geçerli fonksiyonun sonuna kadar kodu çalıştırın, ardından çağırma deyimine adım atın ve bekleyin. Bu komut, geçerli işlevin geri kalanında hata ayıklamanız gerekmeyen durumlarda kullanışlıdır. |
Python kodunuzda Hata Ayıklayıcısı eylemleriyle çalışmak için şu adımları izleyin:
fordöngü deyimini Adım Adım Geç eylemini kullanarak geçin.Adımlama, Hata Ayıklayıcı'nın çağrılan herhangi bir işlev de dahil olmak üzere geçerli kod satırını çalıştırmasına ve hemen yeniden duraklatmasına neden olur. Üzerine adımladıktan sonra değişkenin
iartık Locals ve Autos pencerelerinde tanımlandığına dikkat edin.İşlevi çağıran bir sonraki kod satırının
make_dot_stringüzerinden geçin.Bu örnekte, Adım Atla komutu Hata Ayıklayıcı'nın işlevi tamamen
make_dot_stringçalıştırmasına ve işlevden dönüşten sonra durmasına neden olur. Hata Ayıklayıcı, ayrı bir kesme noktası olmadığı sürece işlevin içinde durmaz.Kodun üzerinde birkaç kez daha adım adım ilerleyin ve Yerel Ayarlar veya Otomatikler penceresindeki değerlerin nasıl değiştiğini gözlemleyin .
Yerel Ayarlar veya Otomatikler penceresinde, değeri düzenlemek üzere bir değişkenin Değer sütununa çift tıklayın. Bu örnekte değişkeninin değerini
solarak'Hello, Python Application'değiştirin. Değeri tek tırnak içine aldığınızdan emin olun. Değişikliklerinizi uygulamak için Enter'ı veya değerin dışındaki herhangi bir alanı seçin.Fonksiyon çağrısına kadar İçine Gir komutunu kullanarak kodda adım adım ilerleyin
make_dot_string.bir işlev için Step Into , Hata Ayıklayıcı'nın hem işlevi çağırmasına hem de işlev koduna adım atmasına neden olur. Hata ayıklama işlemi bir işlevin içinde olduğunda, yerel değişkenlerini inceleyebilir ve kodunda doğrudan adım adım ilerleyebilirsiniz. Bu örnekte, Adımla eylemi
make_dot_stringişlevine girer.İşlevden çıkana kadar İçine Gir ile adımlamaya devam edin.
İşlev kodunun
make_dot_stringsonuna ulaştığınızda, sonraki adım hata ayıklayıcısınıfordeğişkendeki yeni dönüş değeriyle döngüyesdöndürür.printifadesine yeniden adım attığınızda,printifadesindeki Adımla eyleminin bu işlevin içine girmediğini fark edeceksiniz. Bu davranışın nedeni, işlevinprintPython'da yazılmamış olmasıdır. Python çalışma zamanının içindeki doğal kod.İşlevin bir parçası olana kadar
make_dot_stringkullanmaya devam edin, ardından Dışarı Adımla'yı kullanın ve Hata Ayıklayıcı'nın döngüyeforgeri döndüğünü fark edin.Step Out ile Hata Ayıklayıcı işlevin kalan kısmını çalıştırır ve ardından çağrı kodunda otomatik olarak duraklatır. Bu eylem, uzun bir işlevin bazı bölümlerinde adım adım ilerledikten ve işlev gözleminizi sonlandırmak istediğinizde yararlı olur. Dışarı Çık, kalan kodda ya da çağıran kodda ayarlanmış bir kesme noktasına ulaşana kadar geçiş yapar.
Devam (F5) kullanarak sonraki kesme noktasına ulaşılana kadar programı çalıştırmaya devam edin. Döngüde
forayarlanmış bir kesme noktanız olduğundan, sonraki yinelemede durursunuz.spenceresinde değişkenin değişen değerini gözlemleyerek programın yürütülmeye devam ettiğini onaylayabilirsiniz.
Kesme noktası koşullarını kullanma
Bir döngünün yüzlerce yinelemesinde gezinmek yorucu olabilir, bu nedenle Visual Studio kesme noktasına bir koşul eklemenize olanak tanır. Kesme noktası koşulu ayarladığınızda , Hata Ayıklayıcı programı yalnızca koşul karşılandığında kesme noktasında duraklatır.
Aşağıdaki adımlarda, for yalnızca değişkenin değeri i 1600'ü aştığında duraklatılması için döngü deyiminde kesme noktası koşulunun nasıl tanımlanacağı gösterilmektedir:
Kesme noktası koşulunu ayarlamak için kırmızı kesme noktası noktasına sağ tıklayın ve Koşullar'ı seçin veya Alt+F9>C klavye kısayolunu kullanın.
Kesme Noktası Ayarları açılan iletişim kutusunda Koşul'u oluşturmak için aşağıdaki ayarları yapılandırın:
Koşul türünü Koşullu İfade olarak ayarlayın.
Koşul değerlendirmesini True olarak tanımlayın.
Koşul değeri olarak girin
i > 1600.Kapat'ıseçin.
Hata ayıklamaya ve program yürütmeye devam etmek için F5'i seçin. Programın koşullu kesme noktasına ulaşmadan önce birçok yineleme çalıştırdığını gözlemleyin.
Hata Ayıklayıcı'nın koşullu kesme noktasına ulaştığında program yürütmeyi doğru şekilde duraklattığını onaylayabilirsiniz. Koşul karşılandığında, Locals penceresi değişken değerini olarak
igösterir1608.Programı tamamlanmak üzere çalıştırmak için kesme noktasını devre dışı bırakabilir ve program yürütmeye devam edebilirsiniz.
Kırmızı noktanın üzerine gelin ve Devre dışı bırak'ı seçin veya kırmızı noktaya sağ tıklayıp Kesme noktasını devre dışı bırak'ı seçin.
Programı çalıştırmak için Devam'ı seçin (veya F5 tuşuna basın).
Program sona erdiğinde, Visual Studio hata ayıklama oturumunu durdurur ve düzenleme moduna döner.
Kesme noktasını da silebilirsiniz. Kırmızı noktayı seçin veya noktaya sağ tıklayın ve Kesme noktasını sil'i seçin. Bu eylem tanımlı koşulları da siler.
Tip
Python yorumlayıcısını başlatma hatası gibi bazı durumlarda Python çıkış penceresi, program duraklatılmadan ve Devam etmek için herhangi bir tuşa basın istemini göstermeden tamamlandıktan hemen sonra kapanabilir. Duraklatma ve istem zorlamak için, -i argümanını Çalıştır>Yorumlayıcı Bağımsız Değişkenleri alanına, Hata Ayıklama sekmesinde ekleyin. Bu argüman, kod çalıştırıldıktan sonra Python yorumlayıcısını etkileşimli moda alır. Program, pencereyi kapatmak için Ctrl+Z+Enter'ı seçmenizi bekler.