Menghapuskan Pembolehubah Iterator dalam Untuk Gelung
Ia adalah perkara biasa untuk digunakan untuk gelung dengan pembolehubah lelaran untuk lelaran pada julat nilai. Walau bagaimanapun, adakah ia boleh dilakukan untuk mencapai kelakuan yang sama tanpa pembolehubah lelaran?
Satu pendekatan ialah menggunakan fungsi lambda dan kaedah xrange():
def loop(f, n): for _ in xrange(n): f()
Ini membolehkan lebih banyak sintaks ringkas dengan menghapuskan keperluan untuk mentakrifkan pembolehubah lelaran secara eksplisit:
loop(lambda: print('Hello'), 5)
Walau bagaimanapun, biasanya disyorkan untuk mengekalkan pembolehubah lelaran untuk kebolehbacaan dan kemudahan pemahaman.
Pilihan lain melibatkan penggunaan pembolehubah garis bawah, dilambangkan dengan _. Walaupun ia boleh memenuhi tujuan pembolehubah tiruan, ia bukan penyelesaian yang ideal:
for _ in range(n): do_something()
Ini mungkin tidak mematuhi konvensyen penamaan Python, kerana pengecam harus mengelak daripada menggunakan garis bawah. Selain itu, dalam sesi Python interaktif, _ diberikan hasil ungkapan terakhir, yang boleh menyebabkan kekeliruan.
Walaupun ada alternatif ini, amalan terbaik adalah menggunakan pembolehubah lelaran untuk gelung untuk kejelasan dan kebolehselenggaraan.
Atas ialah kandungan terperinci Bolehkah Anda Menghapuskan Pembolehubah Iterator dalam Python Untuk Gelung?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!