Dalam artikel ini, kita akan mempelajari penggunaan fungsi peta dalam Python.
Fungsi map() Python menggunakan fungsi pada setiap item dalam iterator yang disediakan sebagai input. Senarai, tupel, set, kamus atau rentetan semuanya boleh digunakan sebagai lelaran dan kesemuanya mengembalikan objek peta boleh lelar. map() ialah fungsi terbina dalam Python.
map(function, iterator1,iterator2 ...iteratorN)
fungsi - Ia adalah perlu untuk menyediakan peta dengan fungsi yang akan digunakan untuk semua item yang tersedia pada iterator.
iterator - Objek boleh lelar paksa. Ia boleh menjadi senarai, tuple, dsb. Fungsi map() menerima berbilang objek lelaran sebagai parameter.
map() menggunakan fungsi yang ditentukan pada setiap item dalam iterator dan menghasilkan tuple, senarai atau objek peta boleh lelar lain.
Fungsi dan objek boleh lelar ialah dua input fungsi map(). Fungsi yang dihantar ke map() ialah fungsi biasa yang akan berulang pada setiap nilai dalam lelaran yang ditentukan.
Atur cara berikut menggunakan fungsi map() dalam Pythonuntuk menambah 5 pada setiap elemen dalam senarai -
# creating a function that accepts the number as an argument def exampleMapFunction(num): # adding 5 to each number in a list and returning it return num+5 # input list inputList = [3, 5, 1, 6, 10] # Passing above defined exampleMapFunction function # and given list to the map() function # Here it adds 5 to every element of the given list modifiedList = map(exampleMapFunction, inputList) # printing the modifies list(map object) print(modifiedList) # converting the map object to the list and printing it print("Adding 5 to each element in a list using map():\n", list(modifiedList))
<map object at 0x7fb106076d10> Adding 5 to each element in a list using map(): [8, 10, 6, 11, 15]
Python menggunakan kamus untuk melaksanakan tatasusunan bersekutu yang lebih biasa. Kamus ialah satu set pasangan nilai kunci. Ia ditakrifkan menggunakan pendakap kerinting {}.
Kamus adalah dinamik dan sentiasa berubah. Ia boleh ditukar dan dipadamkan mengikut keperluan. Item kamus boleh diakses menggunakan kekunci, tetapi elemen senarai diambil mengikut indeks berdasarkan kedudukannya dalam senarai, beginilah cara kamus berbeza daripada senarai.
Memandangkan kamus ialah lelaran, anda boleh menggunakannya di dalam fungsi map().
Atur cara berikut menambah 5 pada setiap elemen dalam kamus menggunakan fungsi map() dalam Python -
# creating a function that accepts the number as an argument def exampleMapFunction(num): # adding 5 to each number in a dictionary and returning it return num + 5 # input Dictionary inputDictionary = {2, 3, 4, 5, 6, 7, 8, 9} # passing above defined exampleMapFunction function # and input dictionary to the map() function # Here it adds 5 to every element of the given dictionary modifiedDict = map(exampleMapFunction, inputDictionary) # printing the modified dictionary(map object) print(modifiedDict) # converting the map object to the list and printing it print("Adding 5 to each element in a dictionary using map():\n", list(modifiedDict))
<map object at 0x7fb1060838d0> Adding 5 to each element in a dictionary using map(): [7, 8, 9, 10, 11, 12, 13, 14]
Dalam Python, tuple ialah objek yang unsur-unsurnya dipisahkan dengan koma dan disertakan dalam kurungan.
Kod berikut menggunakan fungsi lower() dan map() untuk menukar semua item dalam tupel kepada huruf kecil:
# creating a function that accepts the number as an argument def exampleMapFunction(i): # converting each item in tuple into lower case return i.lower() # input tuple inputTuple = ('HELLO', 'TUTORIALSPOINT', 'pyTHON', 'CODES') # passing above defined exampleMapFunction function # and input tuple to the map() function # Here it converts every element of the tuple to lower case modifiedTuple = map(exampleMapFunction, inputTuple) # printing the modified tuple(map object) print(modifiedTuple) print('Converting each item in a tuple to lowercase:') # converting the map object to the list and printing it print(list(modifiedTuple))
<map object at 0x7fb10f773590> Converting each item in a tuple to lowercase: ['hello', 'tutorialspoint', 'python', 'codes']
Menggunakan map() bersama-sama dengan alatan berfungsi seperti filter() dan reduce() kita boleh melakukan perubahan yang lebih kompleks pada objek boleh lelar.
Dalam sesetengah kes, kita perlu mengendalikan input sesuatu yang boleh diulang dan mengembalikan objek yang boleh diulang dengan mengalih keluar/menapis item yang tidak diperlukan daripada input. Dalam kes ini, filter() Python ialah pilihan yang bijak.
Fungsifilter() mengembalikan item input boleh lelar yang memenuhi fungsi mengembalikan true.
Jika tiada fungsi diluluskan, filter() akan menggunakan fungsi identiti. Ini bermakna penapis() menyemak nilai sebenar setiap item dalam lelaran dan mengalih keluar sebarang nilai palsu.
Fungsi berikut menggunakan gabungan fungsi penapis() dan peta() untuk menapis semua nombor positif dalam senarai dan mengembalikan punca kuasa duanya -
# importing math module import math # creating a function that returns whether the number # passed is a positive number or not def isPositive(n): return n >= 0 # creating a function that filters all the positive numbers # from the list and returns the square root of them. def filterSqrtofPositive(nums): # filtering all the positive numbers from the list using filter() # and returning the square root of them using the math.sqrt and map() filteredItems = map(math.sqrt, filter(isPositive, nums)) # returning the list of filetred elements return list(filteredItems) # input list inputList= [16, -10, 625, 25, -50, -25] # calling the function by passing the input list print(filterSqrtofPositive(inputList))
[4.0, 25.0, 5.0]
Fungsi map() Python membolehkan anda melakukan operasi pada objek boleh lelaran. Map() biasanya digunakan untuk menukar dan memanipulasi objek boleh lelar tanpa gelung.
Dalam artikel ini, kami mempelajari cara menggunakan kaedah map() dalam Python, mengambil beberapa jenis data sebagai contoh.
Atas ialah kandungan terperinci Apakah kegunaan fungsi peta dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!