Cara Menginterpolasi Pembolehubah menjadi Rentetan dalam Python
Apabila bekerja dengan rentetan Python, selalunya perlu memasukkan nilai pembolehubah dalam rentetan. Ini dikenali sebagai interpolasi rentetan.
Masalahnya:
Pertimbangkan kod berikut:
num = 40 plot.savefig('hanning40.pdf') # This line is problematic
Di sini, kami ingin menyimpan plot menggunakan nama fail yang mengandungi nilai num. Walau bagaimanapun, hanya memasukkan pembolehubah seperti ini tidak berfungsi.
Penyelesaian:
Terdapat beberapa kaedah untuk menginterpolasi pembolehubah ke dalam rentetan dalam Python:
1. f-strings:
plot.savefig(f'hanning{num}.pdf')
Kaedah ini menggunakan f-strings, yang telah diperkenalkan dalam Python 3.6. Ia adalah cara pilihan dan paling ringkas untuk menginterpolasi pembolehubah.
2. str.format():
plot.savefig('hanning{0}.pdf'.format(num))
Kaedah ini menggunakan kaedah format() kelas rentetan. Pemegang tempat {} mewakili kedudukan pembolehubah dalam rentetan format.
3. Penggabungan Rentetan:
plot.savefig('hanning' + str(num) + '.pdf')
Kaedah ini melibatkan penggabungan rentetan dengan perwakilan rentetan pembolehubah. Walau bagaimanapun, ia tidak secekap atau boleh dibaca seperti kaedah lain.
4. Penentu Penukaran:
plot.savefig('hanning%s.pdf' % num)
Kaedah ini menggunakan penentu penukaran (%s) untuk mewakili pembolehubah. Ia serupa dengan penggabungan rentetan tetapi menggunakan sintaks yang lebih padat.
5. Nama Pembolehubah Tempatan (Helah Kemas):
plot.savefig('hanning%(num)s.pdf' % locals())
Helah ini melibatkan menghantar kamus pembolehubah tempatan ke rentetan format. Ia membolehkan anda menggunakan nama pembolehubah sebagai pemegang tempat dalam rentetan.
6. rentetan.Templat:
plot.savefig(string.Template('hanning${num}.pdf').substitute(locals()))
Kaedah ini menggunakan rentetan.Kelas templat untuk menginterpolasi pembolehubah. Ia menawarkan pilihan pemformatan lanjutan, tetapi ia kurang biasa digunakan berbanding kaedah lain.
Nota Tambahan:
Atas ialah kandungan terperinci Bagaimana untuk Memasukkan Pembolehubah ke dalam String dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!