เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

การแบ่งสตริงด้วย Pattern

กำหนดให้มี list ชื่อ movies โดยแต่ละสมาชิกเก็บชื่อภาพยนตร์ วันที่เผยแพร่ และชื่อผู้กำกับ (เช่น "The Godfather, 1972, Francis Ford Coppola")

มาฝึกใช้นิพจน์ทั่วไป (regular expression) เพื่อแบ่งสตริงกัน โจทย์คือดึงชื่อภาพยนตร์และชื่อผู้กำกับออกจากแต่ละสมาชิกใน list ตัวอย่างเช่น หากสมาชิกคือ "The Godfather, 1972, Francis Ford Coppola" ผลลัพธ์ที่ได้จะเป็น:

['The Godfather', 'Francis Ford Coppola']

จากนั้นให้แปลงผลลัพธ์นี้ให้อยู่ในรูปแบบ string เดียว เช่น

"The Godfather, Francis Ford Coppola"

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

ฝึกทำโจทย์สัมภาษณ์งานเขียนโค้ดด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • คอมไพล์นิพจน์ทั่วไปที่ใช้แบ่งสตริงใน movies ออกเป็นชื่อภาพยนตร์และชื่อผู้กำกับ
  • ดึงชื่อภาพยนตร์และชื่อผู้กำกับโดยใช้ re.split()
  • สร้าง string ใหม่ที่รวมชื่อภาพยนตร์และชื่อผู้กำกับคั่นด้วย ,
  • เพิ่ม string ที่ได้ลงใน movies_without_year

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Compile a regular expression
pattern = re.compile(____)

movies_without_year = []
for movie in movies:
    # Retrieve a movie name and its director
    split_result = re.split(____)
    # Create a new string with a movie name and its director
    movie_and_director = ', '.____
    # Append the resulting string to movies_without_year
    movies_without_year.____
    
for movie in movies_without_year:
    print(movie)
แก้ไขและรันโค้ด