Rumah > Artikel > pembangunan bahagian belakang > [Kompilasi Hematemesis] 50 soalan dan jawapan temu bual Python (koleksi)
Artikel ini meringkaskan 50 soalan dan jawapan temu bual Python untuk anda. Ia mempunyai nilai rujukan tertentu Rakan-rakan yang memerlukan boleh merujuk kepadanya.
Python kini merupakan bahasa paling popular dalam bidang pengaturcaraan. Dalam artikel ini, saya akan meringkaskan 50 soalan wawancara Python yang paling biasa. Jawapan rujukan disediakan untuk setiap soalan, dengan harapan dapat membantu anda menonjol dalam temu duga kerja pada tahun 2019 dan mencari pekerjaan bergaji tinggi. Soalan temu bual ini merangkumi banyak aspek seperti asas Python, pengaturcaraan Python, analisis data, dan perpustakaan fungsi Python.
S1. Apakah perbezaan antara senarai dan tupel dalam Python?
S2. Apakah fungsi utama Python?
Python ialah bahasa yang ditafsirkan. Tidak seperti bahasa seperti C, Python tidak memerlukan kompilasi sebelum dijalankan.
Python ialah bahasa dinamik dan apabila anda mengisytiharkan pembolehubah atau serupa, anda tidak perlu mengisytiharkan jenis pembolehubah.
Python sesuai untuk pengaturcaraan berorientasikan objek kerana ia membenarkan definisi kelas serta komposisi dan warisan. Python tidak mempunyai arahan capaian (seperti C's public, private).
Dalam Python, fungsi ialah objek kelas pertama. Mereka boleh ditugaskan kepada pembolehubah. Kelas juga merupakan objek kelas pertama
Menulis kod Python adalah pantas, tetapi menjalankannya lebih perlahan. Python membenarkan sambungan berasaskan C seperti perpustakaan fungsi numpy.
Python boleh digunakan dalam banyak bidang. Pembangunan aplikasi web, automasi, pemodelan matematik, aplikasi data besar dan banyak lagi. Ia juga sering digunakan sebagai kod "gam".
S3. Adakah Python bahasa pengaturcaraan tujuan umum?
Python mampu menulis skrip, tetapi dalam pengertian umum, ia dianggap sebagai bahasa pengaturcaraan tujuan umum.
S4. Bagaimanakah Python mentafsir bahasa?
Python tidak perlu mentafsir atur cara sebelum menjalankannya. Oleh itu, Python adalah bahasa yang ditafsirkan.
S5 Apakah itu semangat?
PEP adalah singkatan kepada Python Enhancement Proposal. Ia adalah satu set peraturan yang menentukan cara memformat kod Python untuk kebolehbacaan maksimum.
S6. Bagaimana untuk menguruskan memori dalam Python?
Pengurusan memori dalam python diuruskan oleh ruang timbunan peribadi Python. Semua objek Python dan struktur data terletak dalam timbunan peribadi. Pengaturcara tidak mempunyai akses kepada timbunan peribadi ini. Jurubahasa ular sawa menguruskan perkara ini.
Peruntukan ruang timbunan untuk objek Python dilakukan oleh pengurus memori Python. API teras menyediakan beberapa alat untuk pengaturcara menulis kod.
Python juga mempunyai pengumpul sampah terbina dalam yang menuntut semula semua memori yang tidak digunakan dan menjadikannya tersedia untuk ruang timbunan.
S7. Apakah ruang nama dalam Python?
Ruang nama ialah sistem penamaan yang digunakan untuk memastikan bahawa nama adalah unik untuk mengelakkan konflik penamaan.
S8. Apakah itu PYTHONPATH?
Ia ialah pembolehubah persekitaran yang digunakan semasa mengimport modul. Setiap kali modul diimport, PYTHONPATH juga dicari untuk menyemak sama ada modul yang diimport wujud dalam direktori masing-masing. Ini digunakan oleh jurubahasa untuk menentukan modul yang hendak dimuatkan.
S9. Apakah itu modul python? Apakah modul terbina dalam yang biasa digunakan dalam Python?
Modul Python ialah fail .py yang mengandungi kod Python. Kod ini boleh menjadi kelas fungsi atau pembolehubah. Beberapa modul terbina dalam yang biasa digunakan termasuk: sys, matematik, rawak, masa data, JSON.
S10 Apakah pembolehubah tempatan dan pembolehubah global dalam Python?
Pembolehubah global: Pembolehubah yang diisytiharkan di luar fungsi atau dalam ruang global dipanggil pembolehubah global. Pembolehubah ini boleh diakses oleh mana-mana fungsi dalam program.
Pembolehubah setempat: Sebarang pembolehubah yang diisytiharkan dalam fungsi dipanggil pembolehubah tempatan. Pembolehubah ini wujud dalam ruang tempatan, bukan ruang global.
S11. Adakah python sensitif huruf?
Ya. Python ialah bahasa sensitif huruf besar-besaran.
S12. Apakah penukaran jenis dalam Python?
Penukaran jenis merujuk kepada menukar satu jenis data kepada jenis data yang lain.
int() - Tukar sebarang jenis data kepada jenis integer
float() - Tukar sebarang jenis data kepada jenis float
ord() - Tukar aksara kepada integer
hex() - Tukar integer kepada heksadesimal
oct() - Tukar integer to octal
tuple() - Fungsi ini digunakan untuk menukar kepada tuple.
set() - Fungsi ini mengembalikan jenis selepas penukaran kepada set.
list() - Fungsi ini digunakan untuk menukar mana-mana jenis data kepada jenis senarai.
dict() – Fungsi ini digunakan untuk menukar tuple berurutan (kunci, nilai) kepada kamus.
str() - digunakan untuk menukar integer kepada rentetan.
kompleks(sebenar, imej) - Fungsi ini menukar nombor nyata kepada nombor kompleks (sebenar, imej).
S13. Bagaimana untuk memasang Python pada Windows dan menetapkan pembolehubah laluan?
Untuk memasang Python pada Windows, ikuti langkah berikut:
Pasang python daripada pautan berikut: https://http://www.python.org/downloads/
Selepas memuat turun, pasang pada PC anda. Cari di mana PYTHON dipasang pada PC anda menggunakan arahan berikut pada arahan arahan: cmd python.
Kemudian pergi ke Tetapan Sistem Lanjutan dan tambah pembolehubah baharu dan namakannya PYTHON_NAME dan tampal laluan yang disalin.
Cari pembolehubah laluan, pilih nilainya dan pilih Edit.
Jika nilai tidak wujud, tambahkan koma bertitik di hujung nilai dan taip %PYTHON_HOME%
S14 Adakah lekukan diperlukan dalam python?
Lekukan diperlukan untuk Python. Ia menentukan blok kod. Semua kod dalam gelung, kelas, fungsi, dsb. dinyatakan dalam blok inden. Ini biasanya dilakukan menggunakan empat aksara ruang. Jika kod anda tidak diindenkan di mana perlu, ia tidak akan dilaksanakan dengan tepat dan juga akan menimbulkan ralat.
S15 Apakah perbezaan antara tatasusunan dan senarai Python?
Tatasusunan dan senarai dalam Python mempunyai cara yang sama untuk menyimpan data. Walau bagaimanapun, tatasusunan boleh mengandungi hanya satu elemen jenis data, manakala senarai boleh mengandungi sebarang elemen jenis data.
S16. Apakah fungsi dalam Python?
Fungsi ialah blok kod yang hanya dilaksanakan apabila dipanggil. Untuk menentukan fungsi dalam Python, anda perlu menggunakan kata kunci def.
S17. Apakah itu __init__?
__init__ ialah kaedah atau struktur dalam Python. Kaedah ini secara automatik dipanggil untuk memperuntukkan memori apabila objek/contoh baharu kelas dicipta. Semua kelas mempunyai kaedah __init__.
S18. Apakah fungsi lambda?
Fungsi lambda juga dipanggil fungsi tanpa nama Fungsi ini boleh mengandungi sebarang bilangan parameter, tetapi hanya boleh mempunyai satu pernyataan untuk melaksanakan operasi.
S19 Apakah diri dalam Python?
diri ialah kejadian atau objek kelas. Dalam Python, diri disertakan dalam parameter pertama. Walau bagaimanapun, ini tidak berlaku di Java, ia adalah pilihan. Ia membantu untuk membezakan antara kaedah dan sifat kelas yang mempunyai pembolehubah tempatan. Pembolehubah diri dalam kaedah init merujuk kepada objek yang baru dibuat, manakala dalam kaedah lain ia merujuk kepada objek yang kaedahnya dipanggil.
S20 Apakah perbezaan antara rehat, sambung dan lulus?
S21 Apakah maksud [:: - 1}?
[:: - 1] digunakan untuk membalikkan susunan tatasusunan atau jujukan.
S22. Bagaimana untuk merawak elemen dalam senarai dalam Python?
Anda boleh menggunakan fungsi shuffle untuk merawak elemen senarai. Contohnya:
Keluaran kod ialah:
S23.
Iterators ialah objek yang boleh dilalui atau diulang.
S24. Bagaimana untuk menjana nombor rawak dalam Python?
modul rawak ialah modul standard untuk menjana nombor rawak. Kaedah ini ditakrifkan sebagai:
kaedah rawak.random() mengembalikan nombor titik terapung dalam julat [0,1]. Fungsi ini menjana nombor titik terapung rawak. Kaedah yang digunakan oleh kelas rawak ialah kaedah mengikat contoh tersembunyi. Anda boleh menggunakan contoh Rawak untuk memaparkan atur cara berbilang benang yang mencipta kejadian utas yang berbeza. Penjana rawak lain yang digunakan ialah:
randrange(a,b): Ia memilih integer dan mentakrifkan julat antara [a,b]. Ia mengembalikan elemen dengan memilih unsur secara rawak daripada julat yang ditentukan. Ia tidak membina objek skop.
uniform(a,b): Ia memilih nombor titik terapung yang ditakrifkan dalam julat [a,b)
normalvariate(min,sdev): Ia digunakan untuk taburan normal, di mana min ialah min dan sdev ialah sigma bagi sisihan piawai.
Buat penjana nombor rawak berbilang bebas menggunakan dan membuat instantiating kelas Rawak.
S25 Apakah perbezaan antara julat & xrange?
Dalam kebanyakan kes, xrange dan julat adalah sama dari segi fungsi. Kedua-duanya menyediakan cara untuk menjana senarai integer, satu-satunya perbezaan ialah julat mengembalikan objek senarai Python dan xrange mengembalikan objek xrange. Ini bermakna bahawa xrange sebenarnya tidak menjana senarai statik semasa runtime. Ia mencipta nilai seperti yang diperlukan menggunakan teknik khas yang dipanggil menghasilkan. Teknik ini berfungsi dengan objek yang dipanggil penjana. Jadi jika anda mempunyai senarai yang sangat besar, pertimbangkan xrange.
S26. Bagaimana untuk menulis komen dalam python?
Ulasan dalam Python bermula dengan # aksara. Komen juga boleh dibuat menggunakan doc-strings (rentetan yang disertakan dalam petikan tiga kali ganda).
S27. Apakah penjerukan dan pembongkaran?
Modul Pickle menerima sebarang objek Python dan menukarnya menjadi perwakilan rentetan dan membuangnya ke fail menggunakan fungsi dump, satu proses yang dipanggil pickling. Proses mendapatkan semula objek Python asal daripada rentetan yang disimpan dipanggil unpickling.
S28. Apakah penjana dalam python?
Fungsi yang mengembalikan set item boleh lelar dipanggil penjana.
S29 Bagaimana anda menggunakan huruf besar rentetan?
Dalam Python, fungsi capitalize() boleh menggunakan huruf besar rentetan pertama. Jika rentetan itu sudah mengandungi huruf besar pada permulaannya, maka rentetan itu akan mengembalikan rentetan asal.
S30 Bagaimana untuk menukar rentetan kepada semua huruf kecil?
Untuk menukar rentetan kepada huruf kecil, anda boleh menggunakan fungsi lower().
S31. Bagaimana untuk mengulas berbilang baris dalam python?
Apabila mengulas berbilang baris kod. Semua baris yang hendak diulas hendaklah didahului dengan #. Anda juga boleh menggunakan pintasan untuk mengulas berbilang baris dengan menahan kekunci Ctrl dan mengklik kiri dan menaip # sekali di setiap tempat yang anda inginkan # aksara.
S32. Apakah itu Docstrings dalam Python?
Docstrings sebenarnya bukan ulasan, ia docstrings. Dokstring ini disertakan dalam petikan tiga kali ganda. Ia tidak diberikan kepada mana-mana pembolehubah dan oleh itu kadangkala digunakan dalam ulasan.
S33 Apakah fungsi is, not dan in dalam operator?
Pengendali ialah fungsi khas yang membandingkan satu atau lebih nilai dan menghasilkan hasil yang sepadan. di mana ialah: mengembalikan benar apabila 2 operan adalah benar (contohnya: "a" ialah 'a')
bukan: mengembalikan timbal balik nilai Boolean
dalam: menyemak sama ada unsur Wujud dalam urutan tertentu
S34. Apakah kegunaan fungsi help() dan dir() dalam Python?
Kedua-dua fungsi Help() dan dir() boleh diakses terus daripada penterjemah Python dan boleh digunakan untuk melihat pembuangan gabungan fungsi terbina dalam.
fungsi help() : Fungsi help() digunakan untuk memaparkan rentetan dokumentasi, dan anda juga boleh melihat maklumat penggunaan yang berkaitan dengan modul, kata kunci, atribut, dsb.
fungsi dir(): Fungsi dir() digunakan untuk memaparkan simbol yang ditentukan.
S35 Apabila Python keluar, mengapa ia tidak mengosongkan semua memori yang diperuntukkan?
Apabila Python keluar, terutamanya modul Python yang mempunyai rujukan bulat kepada objek atau objek lain yang dirujuk daripada ruang nama global tidak diagihkan atau dibebaskan.
Tidak dapat mengagihkan bahagian memori yang dikhaskan oleh perpustakaan C.
Apabila keluar, Python akan cuba menyamakan/memusnahkan semua objek lain kerana mekanisme pembersihannya yang cekap sendiri.
S36. Apakah kamus dalam Python?
Jenis data terbina dalam Python dipanggil kamus. Ia mentakrifkan hubungan satu dengan satu antara kunci dan nilai. Kamus mengandungi sepasang kunci dan nilainya yang sepadan. Kamus diindeks oleh kunci.
S37. Bagaimana cara menggunakan operator ternary dalam python?
Pengendali ternary ialah operator yang digunakan untuk memaparkan pernyataan bersyarat. Ini mengandungi nilai benar atau salah dan yang mana pernyataan itu mesti dinilai. Sintaks asasnya ialah:
Pengendali ternary ialah operator yang digunakan untuk memaparkan pernyataan bersyarat. Ini mengandungi nilai benar atau salah dan yang mana pernyataan itu mesti dinilai. Sintaks asas ialah:
[on_true] jika [ungkapan] else [on_false] x, y = 25,50big = x jika x S38 Menggunakan *args, **kwargs? Kami menggunakan *args apabila kami tidak pasti berapa banyak argumen untuk dihantar ke fungsi, atau kami ingin menghantar senarai tersimpan atau tuple argumen ke fungsi. **Kwarg digunakan apabila kita tidak tahu berapa banyak hujah kata kunci untuk dihantar ke fungsi, atau ia boleh digunakan untuk menghantar nilai kamus sebagai hujah kata kunci. Pengecam args dan kwargs adalah konvensyen, anda juga boleh menggunakan *bob dan **billy. S39. Apakah fungsi fungsi len()? Fungsi len() boleh digunakan untuk menentukan panjang rentetan, senarai, tatasusunan, dsb. Q40. Fungsi Split(), sub(), subn() dalam Python. Jika anda ingin mengubah suai rentetan, modul "semula" Python menyediakan 3 kaedah. Ia adalah: split() - "memisahkan" rentetan yang diberikan ke dalam senarai menggunakan corak ungkapan biasa. sub() - Mencari semua subrentetan yang sepadan dengan corak regex dan menggantikannya dengan rentetan berbeza subn() - Ia serupa dengan sub() dan juga mengembalikan rentetan baharu. S41 Apakah indeks negatif dan apakah fungsinya? Jujukan dalam Python diindeks dan terdiri daripada nombor positif dan negatif. Nombor positif menggunakan '0' sebagai indeks pertama dan '1' sebagai indeks kedua, yang proses itu terus digunakan. Indeks untuk nombor negatif bermula dengan '-1', mewakili indeks terakhir dalam jujukan, dan '-2' sebagai indeks kedua terakhir, dengan jujukan memajukan seperti nombor positif. Pengindeksan negatif digunakan untuk mengalih keluar sebarang baris baharu daripada rentetan dan membenarkan rentetan itu kecuali aksara terakhir yang diberikan sebagai S[:-1]. Pengindeksan negatif juga digunakan untuk menunjukkan bahawa indeks mewakili rentetan dalam susunan yang betul. S42. Apakah itu pakej Python? Pakej Python ialah ruang nama yang mengandungi berbilang modul. S43. Bagaimana hendak memadam fail dalam Python? Untuk memadamkan fail dalam Python, anda perlu mengimport modul OS. Selepas itu anda perlu menggunakan fungsi os.remove(). S44 Apakah jenis terbina dalam ular sawa? Jenis terbina dalam Python adalah seperti berikut: integer, titik terapung, nombor kompleks, rentetan, Boolean, dsb. S45. Apakah fungsi yang terdapat dalam NumPy untuk mengendalikan senarai Python? Senarai python ialah bekas guna am yang cekap. Mereka menyokong sisipan, pemadaman, penambahan dan penyatuan (cukup) cekap, dan pemahaman senarai Python menjadikannya mudah untuk dibina dan dimanipulasi. Mereka mempunyai had tertentu: mereka tidak menyokong operasi "divektorkan" seperti penambahan dan pendaraban piksel, dan hakikat bahawa mereka boleh mengandungi objek daripada jenis yang berbeza bermakna Python mesti menyimpan maklumat jenis untuk setiap elemen, dan mesti penghantaran jenis Pelaksanaan kod kerana ia beroperasi pada setiap elemen. NumPy bukan sahaja lebih cekap; ia juga lebih mudah. Anda mendapat banyak operasi vektor dan matriks secara percuma, yang kadangkala boleh menyelamatkan anda daripada kerja yang tidak perlu. Ia juga dilaksanakan dengan berkesan. Tatasusunan NumPy lebih pantas, anda boleh menggunakan NumPy, FFT, lilitan, carian pantas, statistik asas, algebra linear, histogram dan banyak lagi terbina dalam. S46. Bagaimana untuk menambah nilai pada tatasusunan python? Elemen boleh ditambah pada tatasusunan menggunakan fungsi append(), extend() dan insert(i,x). S47. Bagaimana hendak memadamkan nilai tatasusunan python? Anda boleh menggunakan kaedah pop() atau remove() untuk memadamkan elemen tatasusunan. Perbezaan antara kedua-dua fungsi ini ialah yang pertama mengembalikan nilai yang dipadam manakala yang kedua tidak. S48 Adakah Python mempunyai konsep OOps? Python ialah bahasa pengaturcaraan berorientasikan objek. Ini bermakna bahawa sebarang program boleh diselesaikan dalam python dengan mencipta model objek. Pada masa yang sama Python boleh dianggap sebagai bahasa pengaturcaraan dan bahasa struktur. S49 Apakah perbezaan antara salinan dalam dan salinan cetek? Gunakan salinan cetek apabila mencipta jenis tika baharu dan kekalkan nilai yang disalin dalam tika baharu. Salinan cetek digunakan untuk menyalin penunjuk rujukan sama seperti nilai. Rujukan ini menunjuk kepada objek asal, dan perubahan yang dibuat dalam mana-mana ahli kelas juga akan menjejaskan salinan asalnya. Salinan cetek membolehkan pelaksanaan program yang lebih pantas, bergantung pada saiz data yang digunakan. Salinan dalam digunakan untuk menyimpan nilai yang disalin. Salinan dalam tidak menyalin penunjuk rujukan ke objek. Ia merujuk objek dan menyimpan beberapa objek baru yang ditunjuk oleh objek lain. Perubahan yang dibuat dalam salinan asal tidak menjejaskan mana-mana salinan lain yang menggunakan objek tersebut. Salinan dalam boleh menjadikan pelaksanaan program lebih perlahan kerana beberapa salinan dibuat untuk setiap objek yang dipanggil. Q50. Bagaimana untuk melaksanakan multi-threading dalam Python? Python mempunyai pustaka multi-threading, tetapi kesan penggunaan multi-threading untuk mempercepatkan kod tidak begitu bagus Python mempunyai struktur yang dipanggil Global Interpreter Lock (. GIL). GIL memastikan bahawa hanya satu "benang" boleh dilaksanakan pada satu masa. Satu utas memperoleh GIL untuk melaksanakan operasi yang berkaitan, dan kemudian menghantar GIL ke utas seterusnya. Walaupun nampaknya atur cara dijalankan secara selari oleh berbilang rangkaian, mereka sebenarnya hanya bergilir-gilir menggunakan teras CPU yang sama. Semua pas GIL ini menambah overhed pada pelaksanaan. Ini bermakna multi-threading tidak menjadikan program berjalan lebih pantas. [Cadangan berkaitan: Tutorial video Python3] Atas ialah kandungan terperinci [Kompilasi Hematemesis] 50 soalan dan jawapan temu bual Python (koleksi). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!