Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah saya boleh mencetak senarai Python dengan elegan dan ringkas?

Bagaimanakah saya boleh mencetak senarai Python dengan elegan dan ringkas?

Susan Sarandon
Susan Sarandonasal
2024-12-03 06:52:11562semak imbas

How can I print a Python list elegantly and concisely?

Teknik Pencetakan Lanjutan untuk Senarai Python

Apabila mencetak item dalam senarai Python, beberapa pendekatan mungkin kelihatan rumit atau kurang elegan. Artikel ini meneroka kaedah alternatif yang menawarkan kesederhanaan dan kejelasan yang lebih besar.

Satu pendekatan biasa melibatkan penggunaan kaedah join() bersama-sama dengan map():

myList = [Person("Foo"), Person("Bar")]
print("\n".join(map(str, myList)))

Walaupun pendekatan ini berfungsi, ia boleh kelihatan agak bertele-tele. Alternatif yang lebih bersih ialah menggunakan operator * untuk membongkar:

print(*myList, sep='\n')

Kaedah ini membongkar elemen senarai dengan berkesan sebelum mencetaknya, menghasilkan output yang diingini:

Foo
Bar

Pada Python 2, membongkar memerlukan mengimport print_function dari __future__. Bagi mereka yang lebih suka menggunakan join(), pendekatan yang lebih ringkas ialah:

print('\n'.join(str(p) for p in myList))

Kaedah ini menggunakan pemahaman senarai dan penjana, yang menawarkan sintaks yang lebih bersih dan ringkas.

Jika lelaran adalah diutamakan, gelung mudah untuk boleh digunakan:

for p in myList:
    print(p)

Sementara soalan asal mencadangkan cetakan(p) untuk p dalam myList, sintaks ini tidak sah dalam Python. Walau bagaimanapun, sintaks gelung for yang dinyatakan di atas berkesan mencapai matlamat yang sama.

Atas ialah kandungan terperinci Bagaimanakah saya boleh mencetak senarai Python dengan elegan dan ringkas?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn