En Popüler Python Mülakat Soruları ve Cevapları (PDF'yi İndirin)

İçindekiler:

Anonim

Görüşmeniz sırasında bir görüşmecinin size sorabileceği Python ile ilgili görüşme sorularına hazırlanmanıza yardımcı olacak en sık sorulan Python Görüşme Soruları ve Cevaplarını hazırladık. Bu Python Scripting görüşme soruları listesinde, iş görüşmesini kolayca temizlemenize yardımcı olmak için sık sorulan tüm temel ve gelişmiş Python programlama sorularını ayrıntılı yanıtlarla ele aldık.

Yaklaşan görüşmeye hazırlanmanıza yardımcı olmak için yeni başlayanlar ve deneyimli adaylar için neredeyse tüm önemli Python mülakat sorularını ele aldık. Python kodlama mülakat sorularının bu ayrıntılı kılavuzu, Python Programlama için İş mülakatınızı kırmanıza yardımcı olacaktır.

Python mülakat soruları PDF dosyasını indirin

Yeni Başlayanlar ve Deneyimli Kişiler için Python Temel Mülakat Soruları ve Cevapları

1) Python nedir? Python kullanmanın faydaları nelerdir?

Python, nesneler, modüller, iş parçacıkları, istisnalar ve otomatik bellek yönetimi içeren bir programlama dilidir. Pitonların faydaları basit ve kolay, taşınabilir, genişletilebilir, yerleşik veri yapısı ve açık kaynaklı olmasıdır.

2) PEP 8 nedir?

PEP 8, Python kodunuzu nasıl daha okunaklı yazacağınızla ilgili bir kodlama kuralı, bir dizi öneri.

3) Asitleme ve sökme nedir?

Pickle modülü, herhangi bir Python nesnesini kabul eder ve onu bir dizgi temsiline dönüştürür ve dump fonksiyonunu kullanarak bir dosyaya döker, bu işleme dekapaj denir. Orijinal Python nesnelerini depolanmış dize gösteriminden alma işlemi ise çözme olarak adlandırılır.

4) Python nasıl yorumlanır?

Python dili, yorumlanmış bir dildir. Python programı doğrudan kaynak kodundan çalışır. Programcı tarafından yazılan kaynak kodunu, yine yürütülmesi gereken makine diline çevrilen bir ara dile dönüştürür.

5) Python'da bellek nasıl yönetilir?

  • Python belleği, Python özel yığın alanı tarafından yönetilir. Tüm Python nesneleri ve veri yapıları özel bir yığın içinde bulunur. Programcının bu özel yığına erişimi yoktur ve yorumlayıcı bu Python özel yığınla ilgilenir.
  • Python nesneleri için Python yığın alanı tahsisi, Python bellek yöneticisi tarafından yapılır. Çekirdek API, programcının kodlaması için bazı araçlara erişim sağlar.
  • Python ayrıca, kullanılmayan tüm belleği geri dönüştüren ve belleği serbest bırakan ve yığın alanında kullanılabilir hale getiren dahili bir çöp toplayıcıya sahiptir.

6) Hataları bulmaya veya statik analiz yapmaya yardımcı olan araçlar nelerdir?

PyChecker, Python kaynak kodundaki hataları tespit eden ve hatanın stili ve karmaşıklığı hakkında uyarıda bulunan statik bir analiz aracıdır. Pylint, modülün kodlama standardını karşılayıp karşılamadığını doğrulayan başka bir araçtır.

7) Python dekoratörleri nelerdir?

Bir Python dekoratörü, işlevleri kolayca değiştirmek için Python sözdiziminde yaptığımız belirli bir değişikliktir.

8) List ve tuple arasındaki fark nedir?

List ve tuple arasındaki fark, tuple değilken listenin değiştirilebilir olmasıdır. Tuple, örneğin sözlükler için bir anahtar olarak karma hale getirilebilir.

9) Argümanlar değere veya referansa göre nasıl iletilir?

Python'daki her şey bir nesnedir ve tüm değişkenler nesnelere yönelik referansları tutar. Referans değerleri fonksiyonlara göredir; sonuç olarak referansların değerini değiştiremezsiniz. Ancak, eğer değiştirilebilir ise nesneleri değiştirebilirsiniz.

10) Dikte ve Liste kavramları nedir?

Mevcut yinelenebilirliği temel alan bir Sözlük veya Liste oluşturmayı kolaylaştırmak için sözdizimi yapılardır.

11) Python'un sağladığı yerleşik tür nedir?

Değişken ve Değişmez tiplerde yerleşik Python türleri vardır Değişken yerleşik türler

  • Liste
  • Setleri
  • Sözlükler

Değişmez yerleşik türler

  • Teller
  • Tuples
  • Sayılar

12) Python'da ad alanı nedir?

Python'da, tanıtılan her ismin yaşadığı ve bağlanabileceği bir yeri vardır. Bu, ad alanı olarak bilinir. Bir değişken adının yerleştirilen nesneye eşlendiği bir kutu gibidir. Değişken arandığında, ilgili nesneyi elde etmek için bu kutu aranacaktır.

13) Python'da lambda nedir?

Genellikle satır içi işlev olarak kullanılan tek bir anonim ifade işlevidir.

14) Python'daki lambda formlarının neden ifadeleri yoktur?

Python'daki bir lambda formu, yeni işlev nesnesi oluşturmak ve ardından bunları çalışma zamanında döndürmek için kullanıldığı için ifadelere sahip değildir.

15) Python'da geçiş nedir?

Geçiş, işlemsiz Python ifadesi anlamına gelir veya başka bir deyişle, bileşik ifadede bir boşluk bırakılması gereken ve oraya hiçbir şey yazılmaması gereken bir yer tutucusudur.

16) Python'da yineleyiciler nedir?

Python'da yineleyiciler, liste gibi kapsayıcılar gibi bir grup öğeyi yinelemek için kullanılır.

17) Python'da birim testi nedir?

Python'daki bir birim testi çerçevesi, birim testi olarak bilinir. Kurulumların paylaşılmasını, otomasyon testini, testler için kapatma kodunu, testlerin koleksiyonlarda toplanmasını vb. Destekler.

18) Python'da dilimleme nedir?

Liste, tuple, dizeler vb. Gibi dizi türlerinden bir dizi öğe seçmek için bir mekanizma dilimleme olarak bilinir.

19) Python'daki jeneratörler nelerdir?

Yineleyicileri uygulama yolu, üreteçler olarak bilinir. Fonksiyonda ifade vermesi dışında normal bir fonksiyondur.

20) Python'da docstring nedir?

Bir Python dokümantasyon dizesi docstring olarak bilinir, Python işlevlerini, modüllerini ve sınıflarını belgelemenin bir yoludur.

21) Python'da bir nesneyi nasıl kopyalayabilirsiniz?

Python'da bir nesneyi kopyalamak için, genel durum için copy.copy () veya copy.deepcopy () deneyebilirsiniz. Çoğunu hariç tüm nesneleri kopyalayamazsınız.

22) Python'da negatif indeks nedir?

Python dizileri, pozitif ve negatif sayılarda dizin olabilir. Pozitif indeks için, 0 birinci indeks, 1 ikinci indekstir ve bu böyle devam eder. Negatif dizin için, (-1) son dizindir ve (-2) ikinci son dizindir vb.

23) Bir sayıyı bir dizgeye nasıl dönüştürebilirsiniz?

Bir sayıyı dizeye dönüştürmek için, dahili işlev str () kullanın. Sekizli veya onaltılık bir gösterim istiyorsanız, yerleşik işlevi oct () veya hex () kullanın.

24) Xrange ve range arasındaki fark nedir?

Xrange, xrange nesnesini döndürürken range, listeyi döndürür ve aralık boyutu ne olursa olsun aynı belleği kullanır.

25) Python'da modül ve paket nedir?

Python'da modül, programı yapılandırmanın yoludur. Her Python program dosyası, nesneler ve öznitelikler gibi diğer modülleri içe aktaran bir modüldür.

Python programının klasörü bir modül paketidir. Bir paketin modülleri veya alt klasörleri olabilir.

26) Python'da yerel ve global değişkenler için kurallar nelerdir?

Yerel değişkenler : Bir değişkene, işlevin gövdesinin herhangi bir yerinde yeni bir değer atanırsa, yerel olduğu varsayılır.

Global değişkenler : Yalnızca bir fonksiyonun içinde referans verilen bu değişkenler örtük olarak globaldir.

27) Global değişkenleri modüller arasında nasıl paylaşabilirsiniz?

Global değişkenleri tek bir program içindeki modüller arasında paylaşmak için özel bir modül oluşturun. Yapılandırma modülünü uygulamanızın tüm modüllerine içe aktarın. Modül, modüller arasında global bir değişken olarak mevcut olacaktır.

28) Unix'te bir Python Betiğini nasıl çalıştırılabilir yapabileceğinizi açıklayın.

Bir Python Script'in Unix'te yürütülebilir olmasını sağlamak için iki şey yapmanız gerekir:

  • Komut dosyası dosyasının modu çalıştırılabilir olmalı ve
  • ilk satır # (#! / usr / local / bin / python) ile başlamalıdır

29) Python'da bir dosyanın nasıl silineceğini açıklayın?

Os.remove (dosya adı) veya os.unlink (dosya adı) komutunu kullanarak

30) Python'da nasıl rastgele sayılar üretebileceğinizi açıklayın.

Python'da rastgele sayılar üretmek için, komutu şu şekilde içe aktarmanız gerekir:

rastgele içe aktar

random.random ()

Bu, [0,1) aralığında rastgele bir kayan nokta sayısı döndürür.

31) Python ile yazılmış bir modüle C'den nasıl erişebileceğinizi açıklayın.

Python ile yazılmış bir modüle C'den aşağıdaki yöntemle erişebilirsiniz,

Module = = PyImport_ImportModule ("");

32) Python'da // operatörünün kullanımından bahsediyor musunuz?

Bu, yalnızca ondalık noktadan önceki rakamları gösteren bölüm olarak sonuçla iki işleneni bölmek için kullanılan bir Kat Bölme Operatörüdür. Örneğin, 10 // 5 = 2 ve 10.0 // 5.0 = 2.0.

33) Python kullanmanın beş avantajından bahsediyor musunuz?

  • Python, E-posta, HTML vb.Gibi çoğu İnternet platformu için büyük bir standart kitaplıktan oluşur.
  • Python, yorumlayıcının kendisi belleği yeni değişkenlere ayırdığı ve bunları otomatik olarak serbest bıraktığı için açık bellek yönetimi gerektirmez.
  • Köşeli parantez kullanımı sayesinde kolay okunabilirlik sağlar
  • Yeni başlayanlar için öğrenmesi kolay
  • Yerleşik veri türlerine sahip olmak, değişkenleri bildirmekten programlama süresinden ve emekten tasarruf sağlar

34) Python'da split işlevinin kullanımından bahsediyor musunuz?

Python'da split işlevinin kullanımı, tanımlanmış ayırıcıyı kullanarak bir dizeyi daha kısa dizelere ayırmasıdır. Dizede bulunan tüm kelimelerin bir listesini verir.

35) Flask & faydalarının neler olduğunu açıklar ?

Flask, BSD lisanslı "Werkzeug, Jinja 2 ve iyi niyet" e dayalı Python için bir web mikro çerçevesidir. Werkzeug ve jingja, bağımlılıklarından ikisidir.

Flask, mikro çerçevenin bir parçasıdır. Bu, dış kitaplıklara çok az veya hiç bağımlı olmadığı anlamına gelir. Güncelleme için çok az bağımlılık ve daha az güvenlik hatası varken çerçeveyi hafifletiyor.

36) Django, Pyramid ve Flask arasındaki fark nedir?

Flask, daha basit gereksinimleri olan küçük bir uygulama için oluşturulmuş bir "mikro çerçeve" dir. Şişede, harici kitaplıklar kullanmak zorunda değilsiniz. Flask kullanıma hazırdır.

Piramit, daha büyük uygulamalar için oluşturulmuştur. Esneklik sağlar ve geliştiricinin projeleri için doğru araçları kullanmasına izin verir. Geliştirici veritabanını, URL yapısını, şablonlama stilini ve daha fazlasını seçebilir. Piramit ağır yapılandırılabilir.

Pyramid gibi, Django da daha büyük uygulamalar için kullanılabilir. Bir ORM içerir.

37) Flask-WTF nedir ve özellikleri nelerdir?

Flask-WTF, WTForms ile basit entegrasyon sunar. Flask WTF için özellikler şunlardır:

  • Wtforms ile entegrasyon
  • Csrf belirteci ile güvenli form
  • Global csrf koruması
  • Uluslararasılaştırma entegrasyonu
  • Recaptcha desteği
  • Flask Yüklemeleri ile çalışan dosya yüklemesi

38) Flask betiğinin genel çalışma yönteminin ne olduğunu açıklayın.

Şişe betiğinin çalışmasının yaygın yolu şudur:

  • Ya uygulamanız için içe aktarma yolu olmalıdır
  • Veya bir Python dosyasına giden yol

39) Flask'ta oturumlara nasıl erişebileceğinizi açıklayın.

Bir oturum, temelde bir istekten diğerine bilgi hatırlamanıza izin verir. Bir şişede, kullanıcının oturum içeriğine bakabilmesi ve değişiklik yapabilmesi için imzalı bir çerez kullanır. Kullanıcı sadece Flask.secret_key gizli anahtarına sahipse oturumu değiştirebilir.

40) Flask bir MVC modeli mi ve varsa uygulamanız için MVC modelini gösteren bir örnek verin?

Temel olarak Flask, MVC çerçevesiyle aynı şekilde davranan minimalist bir çerçevedir. Dolayısıyla MVC, Flask için mükemmel bir seçimdir ve aşağıdaki örnek için ele alacağımız MVC kalıbı

şişeden ithal şişesi

app = Şişe (_name_)

@ app.route ("/")

Def merhaba ():

"Merhaba Dünya" ya dön

app.run (hata ayıklama = True)

Bu kodda,

  • Yapılandırma bölümü

şişeden ithal şişesi

app = Şişe (_name_)

  • Görünüm bölümü olacak

@ app.route ("/")

Def merhaba ():

"Merhaba Dünya" ya dön

  • Model ya da ana kısım olurken

app.run (hata ayıklama = True)

41) Python Flask'ta veritabanı bağlantısını açıklar mısınız?

Flask, veritabanı destekli uygulamayı (RDBS) destekler. Bu tür bir sistem, shema.sql dosyasını bir sqlite3 komutuna yönlendirmeyi gerektiren bir şema oluşturmayı gerektirir. Yani Flask'ta veritabanı oluşturmak veya başlatmak için sqlite3 komutunu kurmanız gerekiyor.

Flask, üç şekilde veri tabanı talep etmeye izin verir

  • before_request (): Bir istekten önce çağrılırlar ve hiçbir argüman geçirmezler
  • after_request (): Bir talepten sonra çağrılırlar ve müşteriye gönderilecek yanıtı iletirler.
  • teardown_request (): İstisna ortaya çıktığında ve yanıt garanti edilmediğinde çağrılırlar. Cevap oluşturulduktan sonra çağrılırlar. İsteği değiştirmelerine izin verilmez ve değerleri göz ardı edilir.

42) Python çalıştıran birden çok Memcache sunucunuz var, burada memcacher sunucusundan biri başarısız oluyor ve verileriniz var, başarısız olan bu sunucudan anahtar verileri almaya çalışacak mı?

Başarısız olan sunucudaki veriler kaldırılmaz, ancak birden çok düğüm için yapılandırabileceğiniz bir otomatik arıza koşulu vardır. Yük devretme, herhangi bir tür soket veya Memcached sunucu seviyesi hatası sırasında tetiklenebilir ve mevcut bir anahtarın eklenmesi gibi normal istemci hataları sırasında tetiklenemez.

43) Python Geliştirmenizde Memcached sunucu kesintilerini nasıl en aza indirebileceğinizi açıklayın.

  • Bir örnek başarısız olduğunda, bunlardan birkaçı kapanır, bu, istemci bir istekte bulunurken kaybolan veriler yeniden yüklendiğinde veritabanı sunucusuna daha fazla yük getirir. Bunu önlemek için, kodunuz önbellek izini en aza indirecek şekilde yazıldıysa, minimum etki bırakacaktır.
  • Başka bir yol da, kayıp makinelerin IP adresini kullanarak yeni bir makinede Memcached'in bir örneğini ortaya çıkarmaktır.
  • Kod, size Memcached sunucu listesini minimum çalışmayla değiştirme özgürlüğü verdiği için sunucu kesintilerini en aza indirgemek için başka bir seçenektir.
  • Zaman aşımı değerini ayarlamak, bazı Memcached istemcilerinin Memcached sunucu kesintisi için uyguladığı başka bir seçenektir. Memcached sunucunuz düştüğünde, istemci zaman aşımı sınırına ulaşılana kadar bir istek göndermeye çalışacaktır.

44) Dogpile etkisinin ne olduğunu açıklayın? Bu etkiyi nasıl önleyebilirsiniz?

Dogpile etkisi, önbelleğin süresi dolduğunda olaya atıfta bulunur ve web siteleri, aynı anda istemci tarafından yapılan birden fazla istek tarafından vurulur. Bu etki semafor kilidi kullanılarak önlenebilir. Bu sistemde değerin süresi dolduğunda ilk işlem kilidi alır ve yeni değer üretmeye başlar.

45) Memcached'in Python projenizde nasıl kullanılmaması gerektiğini açıklayın.

  • Memcached'in yaygın kötüye kullanımı, onu bir önbellek olarak değil bir veri deposu olarak kullanmaktır.
  • Memcached'i asla uygulamanızı çalıştırmak için ihtiyacınız olan bilgi kaynağı olarak kullanmayın. Veriler her zaman başka bir kaynaktan da sağlanmalıdır
  • Memcached yalnızca bir anahtar veya değer deposudur ve veriler üzerinde sorgu gerçekleştiremez veya bilgileri ayıklamak için içerik üzerinde yineleme yapamaz
  • Memcached, şifreleme veya kimlik doğrulama konusunda herhangi bir güvenlik biçimi sunmaz