Python kodunu düzenleme ve Intellisense kullanma

Geliştirme zamanınızın çoğunu kod düzenleyicisinde harcadığınızdan, Visual Studio'daki Python desteği daha üretken olmanıza yardımcı olacak işlevler sağlar. Özellikler arasında IntelliSense söz dizimi vurgulama, otomatik tamamlama, imza yardımı, yöntem geçersiz kılmaları, arama ve gezinti yer alır.

Kod düzenleyicisi Visual Studio'daki Etkileşimli pencereyle tümleşiktir. Çalışırken, iki pencere arasında kod alışverişi yapmak kolaydır. Daha fazla bilgi için bkz . Öğretici 3. Adım: Etkileşimli REPL penceresini kullanma ve Etkileşimli pencereyi kullanma - Etkileşimliye Gönder komutu.

Anahat oluşturma, kodunuzun belirli bölümlerine odaklanmanıza yardımcı olur. Visual Studio'da kodu düzenlemeyle ilgili genel belgeler için bkz . Kod düzenleyicisinin özellikleri.

Visual Studio Nesne Tarayıcısı , her modülde tanımlanan Python sınıflarını ve bu sınıflarda tanımlanan işlevleri incelemenize olanak tanır. Bu özelliğe Görünüm menüsünden veya Ctrl+Alt+J klavye kısayolunu kullanarak erişebilirsiniz.

IntelliSense özelliklerini kullanma

IntelliSense tamamlamalar, imza yardımı, hızlı bilgiler ve kod renklendirme sağlar. Visual Studio 2017 sürüm 15.7 ve üzeri sürümler de tür ipuçlarını destekler.

Performansı geliştirmek için Visual Studio 2017 sürüm 15.5 ve önceki sürümlerdeki IntelliSense, projenizdeki her Python ortamı için oluşturulan bir tamamlama veritabanına bağlıdır. Paketleri ekler, kaldırır veya güncelleştirirseniz veritabanınızı yenilemeniz gerekebilir. Veritabanı durumu, IntelliSense sekmesindeki Python Ortamları penceresinde (Çözüm Gezgini eşlikçisi) gösterilir. Daha fazla bilgi için bkz. Ortamlar penceresi başvurusu.

Visual Studio 2017 sürüm 15.6 ve üzeri, veritabanına bağımlı olmayan IntelliSense tamamlamaları sağlamak için farklı bir yöntem kullanır.

Tamamlama

Tamamlamalar, düzenleyicideki geçerli konuma uygun şekilde girilebilen deyimler, tanımlayıcılar ve diğer sözcükler olarak görünür. Intellisense, seçenekler listesini bağlama göre doldurur ve yanlış veya dikkat dağıtıcı öğeleri filtreler. Tamamlamalar genellikle farklı deyimler (örneğinimport) ve işleçler (nokta dahil) girilerek tetiklenir, ancak Ctrl+J +Ara Çubuğu klavye kısayolunu seçerek istedikleri zaman görüntülenebilir.

Visual Studio düzenleyicisinde IntelliSense aracılığıyla üye tamamlama işlemini gösteren ekran görüntüsü.

Tamamlama listesi açıkken ok tuşlarını, fareyi kullanarak veya yazma işlemine devam ederek istediğiniz tamamlama için arama yapabilirsiniz. Siz daha fazla harf yazdıkça, olası tamamlamaları göstermek için liste daha fazla filtrelenmiş olur. Aşağıdakiler gibi kısayolları da kullanabilirsiniz:

  • 'argparse' öğesini bulmak için adın başında olmayan 'ayrıştırma' gibi harfler yazın
  • 'AbstractBaseClass' öğesini bulmak için 'abc' veya 'as_integer_ratio' bulmak için 'air' gibi sözcüklerin başındaki harfleri yazın
  • 'base64' öğesini bulmak için 'b64' gibi harfleri atlayın

Burada bazı örnekler verilmiştir:

Visual Studio düzenleyicisinde filtreleme ile üye tamamlama işlemini gösteren ekran görüntüsü.

Üye tamamlamaları, bir değişken veya değerden sonra bir nokta yazdığınızda, olası türlerin yöntemleri ve öznitelikleriyle birlikte otomatik olarak görüntülenir. Bir değişken birden fazla türde olabilirse, liste tüm türlerden tüm olasılıkları içerir. Her tamamlamanın hangi türleri desteklediğini belirtmek için ek bilgiler gösterilir. Tüm olası türler tamamlanmasını desteklediğinde ek açıklama gösterilmez.

Visual Studio düzenleyicisinde birden çok türde üye tamamlama işlemini gösteren ekran görüntüsü.

Varsayılan olarak, "dunder" üyeleri (çift alt çizgiyle başlayan ve biten üyeler) gösterilmez. Genel olarak, bu tür üyelere doğrudan erişilmemelidir. Dunder kullanmanız gerekiyorsa, bu tamamlamaları listeye eklemek için öndeki çift alt çizgiyi yazın:

Visual Studio düzenleyicisinde özel dunder üye tamamlama türlerini gösteren ekran görüntüsü.

import ve from ... import deyimleri içeri aktarılabilir modüllerin listesini görüntüler. deyimi, from ... import belirtilen modülden içeri aktarılabilir üyeleri içeren bir liste oluşturur.

Visual Studio düzenleyicisinde içeri ve içeri aktarma işleminin tamamlandığını gösteren ekran görüntüsü.

raise ve except deyimleri, büyük olasılıkla hata türü olabilecek sınıf listelerini görüntüler. Liste tüm kullanıcı tanımlı özel durumları içermeyebilir, ancak uygun yerleşik özel durumları hızla bulmanıza yardımcı olur:

Visual Studio düzenleyicisinde özel durum tamamlama işlemini gösteren ekran görüntüsü.

@ Simge (at) seçildiğinde bir dekoratör başlatılır ve olası dekoratörler gösterilir. Bu öğelerin çoğu dekoratör olarak kullanılamaz. Hangi dekoratörün kullanılacağını belirlemek için kitaplık belgelerine bakın.

Visual Studio düzenleyicisinde dekoratör tamamlama işlemini gösteren ekran görüntüsü.

Daha fazla bilgi için bkz . Seçenekler - tamamlama sonuçları.

Tür ipuçları

Tür ipuçları Visual Studio 2017 sürüm 15.7 ve sonraki sürümlerde kullanılabilir.

Python 3.5+ (PEP 484 (python.org) içindeki "tür ipuçları", bağımsız değişken türlerini, dönüş değerlerini ve sınıf özniteliklerini gösteren işlevler ve sınıflar için ek açıklama söz dizimidir. IntelliSense, bu ek açıklamalara sahip işlev çağrılarının, bağımsız değişkenlerin ve değişkenlerin üzerine geldiğinizde tür ipuçlarını görüntüler.

Aşağıdaki örnekte, Vector sınıfı türü List[float]olarak bildirilir ve scale işlev hem bağımsız değişkenleri hem de dönüş değeri için tür ipuçları içerir. Bu işleve yönelik bir çağrının üzerine gelindiğinde tür ipuçları gösterilir:

Tür ipuçlarını ortaya çıkarmak için işlev çağrısının üzerine gelme şeklini gösteren ekran görüntüsü.

Sonraki örnekte, sınıfın açıklamalı özniteliklerinin bir özniteliğin Employee IntelliSense tamamlama açılır penceresinde nasıl göründüğünü görebilirsiniz:

Tür ipuçları içeren bir sınıf için IntelliSense tamamlamasını gösteren ekran görüntüsü.

Hatalar normalde çalışma zamanına kadar görünmediğinden, projeniz genelinde tür ipuçlarını doğrulamanız da yararlı olur. Bu amaçla Visual Studio, python Mypy'yi Çözüm Gezgini'de Çalıştır bağlam menüsü komutu >aracılığıyla endüstri standardı Mypy aracını tümleştirir:

Çözüm Gezgini'da Python projeleri için kullanılabilir lint komutlarını gösteren ekran görüntüsü.

Komutu çalıştırmak gerekirse Mypy paketini yüklemenizi ister. Visual Studio daha sonra projedeki her Python dosyasındaki tür ipuçlarını doğrulamak için Mypy'yi çalıştırır. Hatalar Visual Studio Hata Listesi penceresinde görüntülenir. Pencerede bir öğe seçildiğinde, kodunuzdaki uygun satıra gider.

Basit bir örnek olarak, aşağıdaki işlev tanımı bağımsız değişkenin input türü strolduğunu belirten bir tür ipucu içerirken, bu işleve yapılan çağrı bir tamsayı geçirmeyi dener:

def commas_to_colons(input: str):
    items = input.split(',')
    items = [x.strip() for x in items]
    return ':'.join(items)

commas_to_colons(1)

Bu kodda Mypy'yi Çalıştır komutunun kullanılması aşağıdaki hatayı oluşturur:

Mypy doğrulama türü ipuçlarının örnek sonucunu gösteren ekran görüntüsü.

Not

Python'ın 3.5 öncesi sürümleri için Visual Studio, Typeshed saplama dosyaları (.pyi) aracılığıyla sağladığınız tür ipuçlarını da görüntüler. Saplama dosyalarını, doğrudan kodunuza tür ipuçları eklemek istemediğinizde veya bunları doğrudan kullanmayan bir kitaplık için tür ipuçları oluşturmak istediğinizde kullanabilirsiniz. Daha fazla bilgi için mypy projesi wiki'sinde Python modülleri için saplama oluşturma bölümüne bakın.

Visual Studio şu anda açıklamalarda tür ipuçlarını desteklememektedir.

İmza yardımı

bir işlevi çağıran kod yazarken, açma parantezini (yazdığınızda imza yardımı görüntülenir. Kullanılabilir belgeleri ve parametre bilgilerini görüntüler. bir işlev çağrısının içindeki Ctrl+Shift+Space klavye kısayoluyla imza yardımına erişebilirsiniz. Görüntülenen bilgiler, işlevin kaynak kodundaki belge dizelerine bağlıdır, ancak varsayılan değerleri içerir.

Visual Studio düzenleyicisinde imza yardımını gösteren ekran görüntüsü.

İpucu

İmza yardımlarını devre dışı bırakmak için Araçlar>Seçenekler>Metin Düzenleyicisi>Python>Genel'e gidin. Deyim tamamlama>Parametre bilgileri onay kutusunu temizleyin.

Hızlı bilgi

Fare işaretçisini bir tanımlayıcının üzerine getirdiğinizde Hızlı Bilgi araç ipucu görüntülenir. Tanımlayıcıya bağlı olarak, Hızlı Bilgi olası değerleri veya türleri, kullanılabilir belgeleri, dönüş türlerini ve tanım konumlarını görüntüleyebilir:

Visual Studio düzenleyicisinde Hızlı Bilgi görüntüleme bilgilerini gösteren ekran görüntüsü.

Kod renklendirme

Kod renklendirme, kod analizinden renk değişkenlerine, deyimlere ve kodunuzun diğer bölümlerine kadar bilgileri kullanır. Modüllere veya sınıflara başvuran değişkenler, işlevlerden veya diğer değerlerden farklı bir renkte gösterilebilir. Parametre adları yerel veya genel değişkenlerden farklı bir renkte görünebilir. Varsayılan olarak, işlevler kalın olarak gösterilmez.

Visual Studio düzenleyicisinde kod ve söz dizimi renklendirmesini gösteren ekran görüntüsü.

Renkleri özelleştirmek için Araçlar>Seçenekler>Ortam>Yazı Tipleri ve Renkler'e gidin. Öğeleri görüntüle listesinde, istediğiniz Python girişlerini değiştirin:

Visual Studio'daki Yazı Tipleri ve Renkler seçeneklerini gösteren ekran görüntüsü.

Kod parçacıkları ekleme

Kod parçacıkları, klavye kısayolu kullanılarak ve Sekme seçilerek dosyalarınıza eklenebilen kod parçalarıdır. Ayrıca IntelliSense Insert Snippet ve Surround With komutlarını da kullanabilir>, Python'ı ve ardından istediğiniz kod parçacığını seçebilirsiniz.>

Örneğin, class sınıf tanımı ekleyen bir kod parçacığının kısayoludur. yazdığınızda kod parçacığının otomatik tamamlama listesinde classgöründüğünü görürsünüz:

Sınıf kısayolu için bir kod parçacığını gösteren ekran görüntüsü.

Sekme seçildiğinde sınıfın geri kalanı oluşturulur. Ardından ad ve temeller listesinin üzerine yazabilir, Sekme tuşuyla vurgulanan alanlar arasında ilerleyebilir ve gövdeyi yazmaya başlamak için Enter'ı seçebilirsiniz.

Tamamlamanız için kod parçacığının alanlarındaki vurguları gösteren ekran görüntüsü.

IntelliSense Kod ParçacığıNı Düzenle>Kod Parçacığı Ekle menü komutunu kullandığınızda, önce Python'ı ve ardından istediğiniz kod parçacığını seçersiniz:>

Kod Parçacığı Ekle komutu aracılığıyla bir kod parçacığının nasıl seçildiğini gösteren ekran görüntüsü.

IntelliSense>Surround With Düzenle>komutu, metin düzenleyicisindeki geçerli seçimi seçilen bir yapısal öğenin içine yerleştirir. Aşağıdaki örneğe benzer bir kod parçasına sahip olduğunuzu varsayalım:

sum = 0
for x in range(1, 100):
    sum = sum + x

Bu kodun seçilmesi ve Çevrele komutunun seçilmesi, kullanılabilir kod parçacıklarının listesini görüntüler. Kod parçacığı listesinden def seçildiğinde, seçilen kod bir işlev tanımına yerleştirir. Vurgulanan işlev adı ile bağımsız değişkenler arasında gezinmek için Sekme tuşunu kullanabilirsiniz:

Kod parçacıkları için Surround With komutunun nasıl kullanılacağını gösteren ekran görüntüsü.

Kullanılabilir kod parçacıklarını inceleme

Kullanılabilir kod parçacıklarını Kod Parçacıkları Yöneticisi'nde görebilirsiniz. Araçlar>Kod Parçacıkları Yöneticisi'ndenbu özelliğe erişin ve dil olarak Python'ı seçin:

Visual Studio'da Kod Parçacıkları Yöneticisi'ni gösteren ekran görüntüsü.

Kendi kod parçacıklarınızı oluşturmak için bkz . İzlenecek yol: Kod parçacığı oluşturma.

Paylaşmak istediğiniz harika bir kod parçacığı yazarsanız, bunu bir gist'e gönderip bize bildirin. Bunu Visual Studio'nun gelecek bir sürümüne dahil edebiliriz.

Visual Studio'daki Python desteği, kaynak kodun kullanılabildiği kitaplıklar da dahil olmak üzere kodunuz içinde hızlı bir şekilde gezinmek için çeşitli yollar sağlar. Gezinti çubuğu, Tanıma Git, Git ve Tüm Başvuruları Bul komutları için kaynak kodu olan kitaplıkları bulabilirsiniz. Visual Studio Nesne Tarayıcısı'nı da kullanabilirsiniz.

Gezinti çubuğu her düzenleyici penceresinin en üstünde görüntülenir ve iki düzeyli bir tanım listesi içerir. Sol açılan liste, geçerli dosyada üst düzey sınıf ve işlev tanımlarını içerir. Sağ açılan listede, solda gösterilen kapsamdaki tanımların listesi görüntülenir. Düzenleyicide gezindikçe listeler geçerli bağlamınızı gösterecek şekilde güncelleştirilir ve doğrudan atlamak için bu listelerden bir girdi seçebilirsiniz.

Visual Studio düzenleyicisinde Gezinti Çubuğu'nu gösteren ekran görüntüsü.

İpucu

Gezinti çubuğunu gizlemek için, Araçlar>Seçenekleri>Metin Düzenleyicisi>Python>Genel'egidin ve Ayarlar> Yenileştirme çubuğunu temizleyin.

Tanıma Git

Tanıma Git komutu, bir tanımlayıcının (işlev adı, sınıf veya değişken gibi) kullanımından kaynak kod tanımının konumuna hızla atlar. Komutu çağırmak için bir tanımlayıcıya sağ tıklayın ve Tanıma Git'i seçin veya şapka işaretini tanımlayıcıya yerleştirin ve F12'yi seçin. Komut, kaynak kodun kullanılabildiği kod ve dış kitaplıklarınızda çalışır. Kitaplık kaynak kodu kullanılamıyorsa Tanıma Git, modül başvurusu için ilgili import deyime atlar veya bir hata görüntüler.

Visual Studio'da Tanıma Git komutunu gösteren ekran görüntüsü.

Git

Düzenle>Git komutu (Ctrl+,), düzenleyicide herhangi bir dize yazabileceğiniz ve kodunuzda bu dizeyi içeren bir işlevi, sınıfı veya değişkeni tanımlayan olası eşleşmeleri görebileceğiniz bir arama kutusu görüntüler. Bu özellik Tanıma Git özelliğine benzer bir özellik sağlar ancak tanımlayıcı kullanımına gerek kalmaz.

Bu tanımlayıcının tanımına gitmek için herhangi bir ada çift tıklayın veya ardından Enter tuşuna basılan ok tuşlarıyla adı seçin.

Visual Studio'da Git komutunu gösteren ekran görüntüsü.

Tüm Başvuruları Bul

Tüm Başvuruları Bul özelliği, içeri aktarmalar ve atamalar dahil olmak üzere belirli bir tanımlayıcının nerede tanımlandığını ve kullanıldığını bulmanın yararlı bir yoludur. Komutu çağırmak için bir tanımlayıcıya sağ tıklayın ve Tüm Başvuruları Bul'u seçin veya şapka işaretini tanımlayıcıya yerleştirip Shift+F12'yi seçin. Listedeki bir öğeye çift tıklanması, öğenin konumuna gider.

Visual Studio'da Tüm Başvuruları Bul sonuçlarını gösteren ekran görüntüsü.