Bagaimana Anda memeriksa apakah suatu variabel bukan nol di python?

Mencari Null dengan Python? . Namun, Python tidak memilikinya, yang paling mirip dengan Null dari bahasa pemrograman lain. Mari jelajahi objek None Python

Jika Anda terbiasa dengan bahasa pemrograman lain seperti Java, JavaScript, atau PHP, Anda mungkin bertanya-tanya apakah Python memiliki nilai Null yang berfungsi sama dengan Null di bahasa lain

Jawaban singkatnya adalah tidak ada Null di Python, tetapi ada objek None yang digunakan programmer Python untuk mendefinisikan objek dan variabel null. Namun, penting untuk dipahami bahwa meskipun Tidak ada yang melayani beberapa tujuan yang sama dengan Null dalam bahasa lain, ini masih sangat berbeda dari Null yang mungkin biasa Anda gunakan.

Nilai Null khusus yang digunakan dalam banyak bahasa pemrograman (mis. g. C, Java, JavaScript, PHP) menunjukkan pointer kosong, nilai yang tidak diketahui, atau variabel yang belum diinisialisasi. Seringkali, Null didefinisikan sebagai 0 dalam bahasa ini. Dalam Python, Tidak Ada dapat melayani tujuan yang sama seperti Null tetapi tidak didefinisikan sebagai 0 atau nilai lainnya. Tidak ada dalam Python adalah objek dan warga negara kelas satu

Pada artikel ini, saya akan membahas apa artinya ini dan bagaimana Anda dapat menggunakan None Python secara efektif. Kemudian, Anda dapat langsung mulai berlatih Python dengan Dasar-Dasar Python kami. Kursus Bagian 1, yang mencakup konsep kunci level awal dengan 95 latihan interaktif

Tidak ada dengan Python. Menyelam Dalam

Mari kita mulai dengan mengidentifikasi beberapa hal yang tidak ada. Itu tidak sama dengan Salah, meskipun objek Tidak Ada adalah palsu (mis. g. dievaluasi menjadi false dalam operasi Boolean). Juga, Tidak ada bukan nol atau string kosong. Setiap perbandingan dengan objek None mengembalikan False, kecuali untuk membandingkan None dengan dirinya sendiri

Untuk membantu Anda memahami apa itu objek Python None, kami akan membahas beberapa kasus penggunaan, termasuk

  • Menetapkan Tidak Ada ke variabel
  • Pengujian untuk Tidak Ada
  • Mendapatkan Tidak Ada sebagai keluaran fungsi
  • Menggunakan Tidak Ada sebagai parameter default

Menetapkan Objek Tidak Ada ke Variabel

Beberapa bahasa pemrograman memungkinkan untuk memperkenalkan variabel baru melalui deklarasi tanpa nilai awal yang ditetapkan secara eksplisit. Nilai awal default dalam kasus seperti itu sering kali adalah Null

Dalam Python, semuanya bekerja sangat berbeda. Untuk memperkenalkan variabel baru, Anda perlu menetapkan nilai tertentu padanya, yang bisa berupa objek Tidak Ada. Jika Anda tidak menetapkan nilai apa pun ke suatu variabel, itu dianggap tidak terdefinisi dan Anda akan mendapatkan

None
6 saat merujuknya

Sebagai contoh, mari kita coba mencetak variabel yang tidak terdefinisi vs. variabel yang diberi objek Tidak ada

print (employees)
_

Keluaran

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)

Keluaran

None

Namun, objek None tidak dapat dimodifikasi, dirujuk dengan metode Python, atau digunakan dengan operator. Jika Anda merujuk ke objek Tidak Ada dalam kasus seperti itu, Anda akan mendapatkan

None
7. Misalnya

employees = None
print(employees + 1)

Keluaran

TypeError Traceback (most recent call last)
<ipython-input-5-e26d03919a86> in <module>()
----> 1 print(employees + 1)
TypeError: unsupported operand type(s) for +: 'NoneType' and 'int'
_

Seperti yang Anda lihat di traceback, kesalahan disebabkan dengan merujuk ke objek Tidak Ada

Memeriksa Jika Variabel Tidak Ada

Anda dapat memeriksa apakah variabel ditugaskan Tidak ada dengan menggunakan operator

None
8 dan
None
9

employees = None
if employees is None:
    print("It is a None object.")
else:
    print("It is not a None object ")
_

Keluaran

It is a None object.

Perhatikan bahwa penting untuk menggunakan operator identitas (seperti

None
8 dan
None
9) dengan objek None di Python dan bukan operator kesetaraan seperti
employees = None
print(employees + 1)
2 dan
employees = None
print(employees + 1)
3. Masalahnya adalah bahwa operator kesetaraan dapat menampilkan hasil yang salah saat Anda membandingkan objek yang ditentukan pengguna yang menimpanya. Ini sebuah contoh

class EquityVsIdentity():
    def __eq__ (self, other):
        return True

check = EquityVsIdentity()
print(check == None)
print(check is None)

Keluaran

True
False

Di sini, operator kesetaraan (“

employees = None
print(employees + 1)
2”) mengembalikan jawaban yang salah karena diganti oleh objek yang ditentukan pengguna, sedangkan operator identitas (
employees = None
print(employees + 1)
5) mengembalikan hasil yang benar karena tidak dapat diganti

Hal lain yang menarik untuk diperhatikan adalah bahwa karena objek Tidak ada yang salah, Anda cukup menggunakan pernyataan if untuk memeriksa apakah variabelnya Tidak ada atau tidak

employees = None
if employees:
    print("It is not a None object.")
else:
    print("It is a None object.")

Keluaran

It is a None object.

Tidak ada sebagai keluaran fungsi

Pertama-tama, Tidak ada adalah nilai yang dikembalikan ketika tidak ada pernyataan

employees = None
print(employees + 1)
6 dalam suatu fungsi. Mari buat fungsi yang tidak mengembalikan nilai apa pun dan periksa hasilnya

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)
1

Keluaran

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)
2

Seperti yang Anda lihat, fungsi di atas tidak mengembalikan nilai secara eksplisit. Python memberikan pernyataan pengembalian implisit dengan Tidak ada sebagai nilai pengembalian. Lihat panduan ini tentang mendefinisikan fungsi dengan Python untuk mempelajari lebih lanjut tentang kasus di mana Anda mungkin ingin fungsi Anda melakukan beberapa operasi tanpa mengembalikan nilai apa pun

Beberapa fungsi mengembalikan objek aktual saat memiliki hasil nyata dan Tidak ada saat tidak ada hasil. Paket re untuk memproses ekspresi reguler di Python memiliki sejumlah fungsi seperti itu

Anda dapat memeriksa apakah fungsi mengembalikan nilai dengan membandingkan hasilnya dengan Tidak ada. Sebagai contoh, mari jelajahi output dari fungsi

employees = None
print(employees + 1)
7 dari paket re ketika tidak ada kecocokan

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)
_3

Keluaran

Di sini, bahasa Spanyol bukan salah satu bahasa yang digunakan orang ini. Jadi, saat mencari "Spanyol", kami mendapatkan objek Tidak Ada. Kami telah memeriksa dan memastikan bahwa output dari fungsi

employees = None
print(employees + 1)
7 adalah Tidak ada dalam kasus ini

Tidak ada sebagai Nilai Default untuk Parameter Opsional

Akhirnya, Tidak ada sangat sering digunakan sebagai nilai default untuk parameter opsional dari suatu fungsi, terutama ketika Anda harus berurusan dengan tipe data yang dapat diubah seperti daftar. Jika Anda menyetel nilai default parameter ke daftar, daftar ini akan diperbarui di semua pemanggilan fungsi berikutnya yang tidak menentukan parameter opsional yang sesuai – sementara Anda biasanya menginginkan daftar kosong baru setiap kali

Ini akan menjadi lebih jelas setelah contoh. Kami akan mulai dengan membuat fungsi yang menggunakan daftar sebagai nilai default untuk parameter opsional

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)
_4

Keluaran

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)
5

Seperti yang Anda lihat, kami telah membuat fungsi yang menempatkan elemen baru di posisi #1 pada daftar. Performanya baik saat kami memberikan parameter mulai. Namun, jika kami tidak memberikan parameter opsional ini, kami mulai melihat perilaku yang salah dengan setiap panggilan baru ke fungsi tersebut

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)
6

Keluaran

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)
7

Keluaran

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)
_8

Keluaran

NameError Traceback (most recent call last)
<ipython-input-2-d63c9378cee4> in <module>()
----> 1 print (employees)
NameError: name 'employees' is not defined

employees = None
print (employees)
_9

Karena daftar adalah jenis objek yang dapat diubah, kami mendapatkan daftar yang diperbarui setelah setiap pemanggilan fungsi saat kami tidak meneruskan daftar yang ada

Jika Anda ingin memiliki daftar baru dengan setiap panggilan, pertimbangkan untuk menggunakan objek Tidak ada sebagai parameter default

None
0

Keluaran

None
_1

Dalam fungsi ini, kami memeriksa apakah daftar awal adalah Tidak ada; . Ini memastikan bahwa kami mendapatkan perilaku yang benar saat kami tidak memberikan daftar awal ke fungsi tersebut

None
_2

Keluaran

None
_3

Keluaran

None
_4

Keluaran

None
5

Sekarang kita mendapatkan output yang benar, tidak peduli berapa kali kita memanggil fungsi tersebut. Ini hanyalah salah satu contoh bagaimana objek None dapat digunakan secara efektif sebagai nilai default untuk parameter opsional

Ayo Berlatih Tidak Ada dengan Python

Meskipun Python tidak memiliki nilai Null seperti yang biasa Anda gunakan, ia memiliki semua alat yang diperlukan untuk menangani nilai null. Selain itu, karena sintaksis Python yang sederhana dan mudah diikuti, Anda dapat mempelajari dasar-dasar Python dengan sangat cepat – mungkin dalam waktu kurang dari sebulan. Kuncinya adalah mengambil pendekatan terstruktur untuk belajar dan melakukan banyak pengkodean

Jika Anda sangat baru dalam Python, saya sarankan untuk memulai dengan kursus Dasar-Dasar Python Bagian 1. Dalam 95 latihan interaktifnya, Anda akan belajar cara menerima input dari pengguna, menggunakan variabel dan matematika dengan Python, dan menulis pernyataan if, loop, dan fungsi. Anda juga akan mendapatkan pemahaman yang lebih baik tentang tipe Tidak Ada. Anda dapat membaca lebih lanjut tentang kursus ini di artikel ikhtisar ini

Saat Anda siap untuk mempelajari lebih lanjut, lihat trek Belajar Pemrograman dengan Python. Ini mencakup lima kursus interaktif dengan ratusan tantangan pengkodean. Setelah menyelesaikan jalur pembelajaran ini, Anda akan memiliki pemahaman yang baik tentang struktur data Python, termasuk daftar, set, kamus, dan tupel. Anda juga akan merasa nyaman menggunakan algoritme dan fungsi bawaan kunci, seperti yang digunakan untuk mencari dan menyortir di Python

Bagaimana Anda tahu jika suatu variabel bukan nol?

Anda dapat dengan mudah memeriksa apakah suatu variabel Null atau Not Null dalam JavaScript dengan menerapkan kondisi if-else sederhana ke variabel yang diberikan .

APAKAH null atau == null Python?

Jawaban singkatnya adalah tidak ada Null dalam Python , tetapi ada objek None yang digunakan programmer Python untuk mendefinisikan objek null dan .