ฝึกใช้ built-in: map()
ในแบบฝึกหัดนี้ จะได้ฝึกใช้ฟังก์ชัน map() ของ Python เพื่อนำฟังก์ชันไปใช้กับทุกสมาชิกในออบเจกต์ ลองดูรายชื่อแขกในงานปาร์ตี้กัน:
names = ['Jerry', 'Kramer', 'Elaine', 'George', 'Newman']
สมมติว่าต้องการสร้างลิสต์ใหม่ชื่อ names_uppercase ที่แปลงตัวอักษรทุกตัวในแต่ละชื่อให้เป็นตัวพิมพ์ใหญ่ สามารถทำได้ด้วย for loop ด้านล่างนี้:
names_uppercase = []
for name in names:
names_uppercase.append(name.upper())
['JERRY', 'KRAMER', 'ELAINE', 'GEORGE', 'NEWMAN']
มาลองใช้ฟังก์ชัน map() เพื่อทำสิ่งเดียวกันได้อย่างมีประสิทธิภาพมากขึ้นในโค้ดเพียงบรรทัดเดียว
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การเขียน Python Code ที่มีประสิทธิภาพ
คำแนะนำการฝึกหัด
- ใช้
map()และเมธอดstr.upper()เพื่อแปลงชื่อแต่ละชื่อในลิสต์namesให้เป็นตัวพิมพ์ใหญ่ แล้วบันทึกผลลัพธ์ไว้ในตัวแปรnames_map - พิมพ์ชนิดข้อมูลของ
names_map - แตกเนื้อหาใน
names_mapออกมาเป็นลิสต์ชื่อnames_uppercaseโดยใช้เครื่องหมายดอกจัน (*) - พิมพ์
names_uppercaseแล้วสังเกตเนื้อหาที่ได้
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# Use map to apply str.upper to each element in names
names_map = ____(____, ____)
# Print the type of the names_map
print(____(____))
# Unpack names_map into a list
names_uppercase = [____]
# Print the list created above
print(____)