Dapatkah Anda mengalikan daftar dengan daftar dengan python?
Jika Anda bekerja dengan Python, ada banyak skenario di mana seseorang harus menemukan produk berdasarkan indeks dari dua daftar. Mari kita lihat bagaimana memperbanyak daftar di Python menggunakan pendekatan yang berbeda
daftar perkalian pythonUntuk mengalikan daftar dengan Python, gunakan fungsi zip(). Zip() adalah fungsi Python bawaan yang membuat iterator yang akan menggabungkan elemen dari dua atau lebih iterables Show
Anda harus meneruskan daftar ke fungsi zip(*iterables) untuk mendapatkan daftar tupel yang memasangkan elemen dengan posisi yang sama dari kedua daftar listA = [1, 2, 3] listB = [4, 5, 6] products = [] for dt1, dt2 in zip(listA, listB): products.append(dt1 * dt2) print(products) Keluaran[4, 10, 18]_ Dalam contoh ini, pertama, kami mendefinisikan dua daftar. Kemudian diteruskan, kedua list ke dalam metode zip() untuk mendapatkan daftar tupel yang memasangkan elemen dengan posisi yang sama dari kedua list Gunakan perulangan for untuk mengalikan elemen-elemen ini dan menambahkannya ke daftar baru Menggunakan pemahaman daftar untuk memperbanyak daftarPemahaman daftar memungkinkan sintaks yang lebih singkat saat Anda ingin membuat daftar baru berdasarkan nilai dari daftar yang sudah ada. Tanpa pemahaman daftar, Anda harus menulis perulangan for dengan pengujian bersyarat di dalamnya, seperti yang kita lihat pada contoh bagian di atas Anda dapat menggunakan pemahaman daftar untuk mengalikan daftar dengan Python. Pertama, inisialisasi nilai produk menjadi 1 (bukan 0 sebagai 0 dikalikan dengan apa pun yang mengembalikan nol). Kemudian, telusuri ke akhir daftar, dan kalikan setiap angka dengan hasilnya Mengalikan dua daftar di python bisa menjadi kebutuhan dalam banyak perhitungan analisis data. Pada artikel ini kita akan melihat bagaimana mengalikan elemen dari daftar list yang juga disebut nested list dengan list lainnya Menggunakan LoopDalam pendekatan ini kami merancang derek untuk loop, satu di dalam yang lain. Loop luar melacak jumlah elemen dalam daftar dan loop dalam melacak setiap elemen di dalam daftar bersarang. Kami menggunakan operator * untuk mengalikan elemen dari daftar kedua dengan masing-masing elemen dari daftar bersarang ContohDemo Langsung listA = [[2, 11, 5], [3, 2, 8], [11, 9, 8]] multipliers = [5, 11, 0] # Original list print("The given list: " ,listA) # Multiplier list print(" Multiplier list : " ,multipliers ) # using loops res = [[] for idx in range(len(listA))] for i in range(len(listA)): for j in range(len(multipliers)): res[i] += [multipliers[i] * listA[i][j]] #Result print("Result of multiplication : ",res) KeluaranMenjalankan kode di atas memberi kita hasil berikut - The given list: [[2, 11, 5], [3, 2, 8], [11, 9, 8]] Multiplier list : [5, 11, 0] Result of multiplication : [[10, 55, 25], [33, 22, 88], [0, 0, 0]] Dengan menghitungMetode enumerate dapat digunakan untuk mengambil setiap elemen dari daftar bersarang dan kemudian for loop dapat digunakan untuk melakukan perkalian Tutorial ini akan mendemonstrasikan berbagai metode untuk melakukan perkalian berdasarkan elemen dari dua daftar dengan Python. Misalkan kita memiliki dua daftar bilangan bulat dengan dimensi yang sama dan kami ingin mengalikan elemen dari daftar pertama dengan elemen pada posisi yang sama di daftar kedua dan mendapatkan daftar resultan dengan dimensi yang sama Kalikan Dua Daftar dengan Python Menggunakan Metode list1 = [[2,4,5],[3,5,4]] list2 = [[4,1,2],[9,7,5]] product = [[0]*3]*2 for x in range(len(list1)): product[x] = [a*b for a,b in zip(list1[x],list2[x])] print(product) 0Metode 0 bawaan di Python mengambil satu atau lebih iterables dan menggabungkan iterables menjadi sebuah tuple. Seperti daftar 2 dan 3 akan menjadi 4. Menggunakan metode _5, kami mengakses kedua daftar berdasarkan elemen dan mendapatkan daftar yang diperlukan menggunakan metode pemahaman daftarContoh kode di bawah ini menunjukkan cara membuat beberapa daftar 1D dan 2D menggunakan 0 dengan pemahaman daftar
Keluaran Perkalian Daftar 2D _Keluaran
Mengalikan Dua Daftar dengan Python Menggunakan Metode list1 = [[2,4,5],[3,5,4]] list2 = [[4,1,2],[9,7,5]] product = [[0]*3]*2 for x in range(len(list1)): product[x] = [a*b for a,b in zip(list1[x],list2[x])] print(product) 7Metode 8 dari pustaka 9 dengan Python, mengambil dua larik/daftar sebagai input dan mengembalikan larik/daftar setelah melakukan perkalian berdasarkan elemen. Metode ini sangat mudah, karena kita tidak perlu melakukan pekerjaan ekstra apa pun untuk perkalian 2D, tetapi poin negatif dari metode ini adalah metode ini tidak dapat digunakan tanpa pustaka 9Contoh kode di bawah ini menunjukkan cara mengalikan daftar 1D dan 2D dengan Python menggunakan metode 7
Keluaran
Keluaran
Mengalikan Dua Daftar dengan Python Menggunakan Fungsi list1 = [[2,4,5],[3,5,4]] list2 = [[4,1,2],[9,7,5]] product = [[0]*3]*2 for x in range(len(list1)): product[x] = [a*b for a,b in zip(list1[x],list2[x])] print(product) 5Fungsi _3 mengambil fungsi dan satu atau lebih iterable sebagai input dan mengembalikan iterable dengan menerapkan fungsi yang disediakan pada daftar inputKita dapat melakukan perkalian elemen-bijaksana 1D dan 2D dari dua daftar dengan Python menggunakan fungsi 5 dengan meneruskan kedua daftar sebagai argumen ke fungsi 5. Contoh kode di bawah ini menunjukkan bagaimana kita dapat menggunakan 5 untuk mengalikan dua daftar Python
Bisakah Anda mengalikan daftar bersama dengan Python?Seperti sebuah string, kita dapat menggabungkan dan mengalikan daftar Python .
Bagaimana Anda menyilangkan dua daftar dengan Python?Ini adalah metode paling mudah untuk melakukan tugas ini. Dalam hal ini, kami mengulang kedua daftar dan melakukan penggandaan setiap elemen dengan yang lain dan menyimpan hasilnya dalam daftar baru . Ini adalah cara lain di mana tugas ini dapat dilakukan. Dalam hal ini, kami melakukan tugas perkalian menggunakan product().
Bisakah Anda mengalikan daftar dengan pelampung di Python?Seperti yang diberitahukan oleh pesan kesalahan, Anda tidak dapat melakukan perkalian antara string (atau urutan) dan angka floating point (atau float), as Python doesn't support that operation between those two data types. |