Fungsi map untuk lelaran objek dalam Python

Katakan kita mempunyai fungsi square untuk memangkatkan nombor. Dan terdapat satu senarai yang elemen-elemennya perlu dikenakan fungsi ini:

pythondef square(num):
  return num ** 2

lst = [2, 3, 6, 8, 15]

Dalam Python untuk menyelesaikan masalah ini, kita boleh menggunakan fungsi khas map. Ia menerima fungsi dan senarai sebagai parameter, kepada elemen-elemennya yang perlu dikenakan. Mari kita gunakan map untuk menyelesaikan contoh:

pythonres = map(square, lst)
print(res)

Setiap senarai seperti mana-mana objek kompleks lain menduduki banyak ruang dalam memori sistem Python. Oleh itu, untuk menjimatkan sumber, selepas kod dilaksanakan, bukan senarai baru yang akan dikembalikan, tetapi objek peta boleh lelar yang khas:

python<map object at 0x000001F16674BA00>

Mari kita lelakikannya dengan gelung:

pythonfor el in res:
  print(el)

Hasilnya, semua elemen senarai baru akan dipaparkan:

python4
9
36
64
225

Untuk mencipta senarai baru daripada objek peta, kita perlu mengenakan fungsi list ke atasnya:

pythonlst = [2, 3, 6, 8, 15]
res = map(square, lst)

Hasilnya, senarai berikut akan dipaparkan:

python[4, 9, 36, 64, 225]

Juga, ketika bekerja dengan fungsi map dalam parameter pertama, kita boleh menetapkan fungsi lambda. Mari kita tulis semula contoh sebelumnya dengan menggunakan fungsi lambda:

pythonres = map(lambda num: num ** 2, lst, lst)
print(list(res))
Задание 1

Tulis semula kod berikut melalui fungsi lambda:

pythondef func(num):
  return num + 1

lst = [1, 2, 3, 4, 5]
res = map(func, lst)
print(list(res))
Задание 2

Tulis semula kod berikut melalui fungsi lambda:

pythondef func(txt):
  return txt[::-1]

lst = ['123', '456', '789']
res = map(func, lst)
print(list(res))