Saya baru tahu Anda bisa menulis
'{}{}'.format(string_a, string_b)
dari pada
'{0}{1}'.format(string_a, string_b)
dalam Python, yaitu Anda dapat menghilangkan angka untuk parameter format string ketika Anda ingin segala sesuatunya dimasukkan secara berurutan.
Apakah ini dianggap Pythonic?
CATATAN: "Pythonic" adalah istilah yang umum digunakan di kalangan programmer Python untuk berarti kode Python idiomatik. Dalam budaya Python, cenderung ada konsensus yang jelas tentang pertanyaan gaya, terutama untuk yang sangat spesifik seperti ini, mengingat filosofi desain eksplisit bahasa "harus ada satu - dan lebih disukai hanya satu - cara yang jelas untuk melakukannya." Ini dikutip dari "The Zen of Python," satu set aforisme yang jauh menuju definisi apa yang "Pythonic" dan yang disertakan dengan setiap distribusi Python (pada setiap baris perintah juru bahasa Python, masukkan import this
untuk melihatnya).
sumber
{}
fitur ini diperkenalkan dengan Python 3.1 . Peningkatan yang mendorong penambahan ini adalah masalah 5237 . Guido memiliki beberapa komentar tentang masalah itu, termasuk, "Silakan dan selesaikan ini. Saya senang ini masuk!" Jika itu tidak dianggap "Pythonic", saya tidak tahu apa itu."{a}{b}".format(a=string_a, b=string_b)
bukan penomoran. Bagaimanapun, itu hanya spekulasi saya dan membaca yang tersirat pada pemikiran ...Jawaban:
The
{}
fitur yang diperkenalkan di Python 3.1 (dan juga backported untuk Python 2.7). Peningkatan yang mendorong penambahan ini adalah masalah 5237 . Guido memiliki beberapa komentar tentang masalah itu, termasuk:Fitur dengan dukungan semacam itu dari BDFL tentu akan dianggap "Pythonic" dengan ukuran apa pun.
sumber