Tambahkan lajur tersuai pada senarai tupel dalam Python

WBOY
Lepaskan: 2023-08-20 12:05:10
ke hadapan
989 orang telah melayarinya

在Python中给元组列表添加自定义列

Mengenai manipulasi dan analisis data, Python menonjol kerana serba boleh dan bahasa pengaturcaraannya yang berkuasa. Apabila bekerja dengan data, ia selalunya perlu diubah dan dipertingkatkan untuk mengeluarkan cerapan yang bermakna. Tugas biasa ialah menambahkan lajur tersuai pada senarai tupel, di mana setiap tupel mewakili rekod atau entiti dengan berbilang atribut. Dengan menambahkan lajur tambahan pada senarai tupel, kami boleh memperkayakan data dan menjadikannya lebih bermaklumat untuk analisis atau pemprosesan selanjutnya.

Kami akan mendalami pelbagai cara untuk menambahkan lajur tersuai pada senarai tupel dalam Python. Untuk dapat mengikuti contoh dalam catatan blog ini, pengetahuan pengaturcaraan Python asas adalah disyorkan. Kebiasaan dengan senarai, tupel dan kamus akan membantu, kerana kami akan bekerja dengan senarai tupel dan memanipulasi strukturnya.

Kaedah 1: Gunakan pemahaman senarai

Cara mudah ialah menggunakan pemahaman senarai untuk menambahkan lajur tersuai pada senarai tupel. Katakan kita mempunyai senarai tupel yang mengandungi data yang berkaitan dengan pelajar, setiap tupel mengandungi nama pelajar dan umur yang sepadan. Untuk menambah lajur tersuai yang mewakili gred mereka, kami boleh menggunakan coretan kod berikut

Contoh

students = [("Alice", 18), ("Bob", 17), ("Charlie", 16)]
grades = ["A", "B", "C"]

students_with_grade = [(name, age, grade) for (name, age), grade in zip(students, grades)]
Salin selepas log masuk

Output

[('Alice', 18, 'A'), ('Bob', 17, 'B'), ('Charlie', 16, 'C')]
Salin selepas log masuk

Dalam kod di atas, kami menggunakan fungsi zip() untuk menggandingkan setiap tupel pelajar dengan gred dalam senarai gred. Pemahaman senarai yang terhasil mencipta tuple baharu untuk setiap pelajar, termasuk nama, umur dan gred yang sepadan.

Pendekatan ini menawarkan kesederhanaan dan kebolehbacaan, membolehkan anda menambah lajur tersuai dengan cepat berdasarkan sumber data atau pengiraan lain. Ia memanfaatkan kuasa pemahaman senarai untuk mengulangi senarai tuple dan membina tupel baharu dengan lajur tambahan yang dikehendaki.

Pendekatan 2: Menggunakan Fungsi Map()

Satu lagi pendekatan untuk menambahkan lajur tersuai pada senarai tuple ialah dengan menggunakan fungsi map() ini amat berguna apabila anda perlu menggunakan fungsi transformasi pada setiap elemen senarai lajur tersuai yang mewakili segi empat sama umur setiap pelajar

Contoh

students = [("Alice", 18), ("Bob", 17), ("Charlie", 16)]

def add_age_squared(student):
   name, age = student
   return name, age, age ** 2

students_with_age_squared = list(map(add_age_squared, students))
Salin selepas log masuk

Output

[('Alice', 18, 324), ('Bob', 17, 289), ('Charlie', 16, 256)]
Salin selepas log masuk

Dalam contoh ini, kami mentakrifkan fungsi add_age_squared() yang mengambil tuple pelajar, mengekstrak nama dan umur serta mengembalikan tuple baharu yang mengandungi kuasa dua umur. Kami kemudian menggunakan fungsi ini pada setiap elemen senarai pelajar menggunakan fungsi map(), menghasilkan senarai baharu yang mengandungi data asal dan lajur tersuai.

Fungsi map() menawarkan cara ringkas untuk menggunakan fungsi pada setiap elemen senarai, menjana senarai baharu sebagai output Dengan mentakrifkan fungsi transformasi tersuai, anda boleh menambah lajur tersuai dengan mudah berdasarkan data sedia ada dalam tuple senaraikan.

Kaedah 3: Gunakan perpustakaan Pandas

Jika anda bekerja dengan set data yang lebih besar atau memerlukan keupayaan manipulasi data yang lebih maju, menggunakan pustaka panda boleh menjadi pilihan yang hebat untuk menyediakan objek DataFrame yang membolehkan pengendalian dan manipulasi data jadual yang cekap senarai boleh dicapai dengan mudah menggunakan panda, seperti yang ditunjukkan dalam contoh berikut −

Contoh

import pandas as pd

students = [("Alice", 18), ("Bob", 17), ("Charlie", 16)]
df = pd.DataFrame(students, columns=["Name", "Age"])
df["Grade"] = ["A", "B", "C"]
Salin selepas log masuk

Output

  Name  Age Grade
0  Alice   18     A
1    Bob   17     B
2 Charlie  16     C
Salin selepas log masuk

Dalam contoh ini, kami mula-mula mencipta DataFrame df daripada pelajar senarai tuple, dengan menyatakan nama lajur sebagai "Nama" dan "Umur". data asal bersama-sama lajur tersuai.

Panda menyediakan set fungsi dan kaedah yang komprehensif untuk manipulasi dan analisis data. Ia menyediakan cara yang mudah untuk bekerja dengan data jadual, membolehkan anda menambah lajur tersuai dengan mudah sambil mengekalkan integriti dan fleksibiliti struktur data anda.

Contoh output yang disediakan dalam blog ini menunjukkan cara lajur tersuai ditambahkan pada senarai tuple menggunakan setiap pendekatan Ia memberi anda gambaran visual struktur data yang terhasil selepas menambahkan lajur tersuai.

Kesimpulan

Di sini kami meneroka tiga cara berbeza untuk menambah lajur tersuai pada senarai tupel dalam Python. Sama ada anda lebih suka pemahaman senarai, fungsi map() atau memanfaatkan perpustakaan panda, teknik ini memberi anda kefleksibelan untuk memanipulasi data anda mengikut keperluan anda. Dengan menguasai kaedah ini, anda akan dapat mengendalikan pelbagai situasi yang anda hadapi semasa bekerja dengan senarai tupel dalam projek Python.

Python serba boleh dan perpustakaan yang luas menjadikannya alat yang berkuasa untuk pemprosesan dan analisis data. Fungsi map() amat berguna apabila anda perlu menggunakan fungsi transformasi pada setiap elemen senarai. Dengan mentakrifkan fungsi tersuai, anda boleh menambah lajur tersuai dengan mudah berdasarkan data sedia ada dalam senarai tupel.

Atas ialah kandungan terperinci Tambahkan lajur tersuai pada senarai tupel dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan