Python การแยกสตริง (Split()): รายการ, แยกตามอักขระ, ตัวคั่น

⚡ สรุปอย่างชาญฉลาด

Python เมธอด `string split()` เป็นเมธอดในตัวที่ใช้แบ่งสตริงออกเป็นรายการของสตริงย่อยโดยใช้ตัวคั่น โดยจะส่งคืนส่วนต่างๆ เหล่านั้นเป็นองค์ประกอบในรายการ และรับค่าจำกัดจำนวนการแบ่งสูงสุด (maxsplit limit) เป็นตัวเลือกเพิ่มเติมได้

  • 🔪 แยก: ฟังก์ชัน `split()` จะแบ่งสตริงตามตัวคั่นแต่ละตัว หากไม่ระบุตัวคั่น ฟังก์ชันจะแบ่งตามช่องว่าง
  • 🔢 แม็กซ์สปลิต: อาร์กิวเมนต์เสริม maxsplit จะจำกัดจำนวนการแบ่งไว้ที่ maxsplit บวกหนึ่ง
  • 📋 ผลตอบแทน: ฟังก์ชัน split() จะส่งคืนลิสต์ของสตริงย่อย ซึ่งสามารถวนลูปหรือเข้าถึงได้โดยง่าย
  • ↔️ rsplit (): เมธอด rsplit() จะแยกจากด้านขวา โดยจะเปลี่ยนแปลงผลลัพธ์เฉพาะเมื่อใช้ maxsplit เท่านั้น
  • 🔗 เข้าร่วม(): เมธอด str.join() เป็นการทำงานตรงข้ามกับ split() โดยจะรวมลิสต์หลายรายการเข้าเป็นสตริงเดียว
  • 🤖 ความช่วยเหลือจากเอไอ: ผู้ช่วย AI สร้างคำสั่ง split() และขับเคลื่อนกระบวนการแยกคำในไปป์ไลน์ NLP และ ML

Python แยกสตริง ()

แยกเข้าคืออะไร Python?

ฟังก์ชัน split() ช่วยในเรื่องต่อไปนี้ การจัดการสตริง in Pythonฟังก์ชันนี้ช่วยให้คุณแยกสตริงออกเป็นสตริงย่อยต่างๆ โดยจะส่งคืนรายการคำที่อยู่ในบรรทัดหรือสตริงซึ่งคั่นด้วยสตริงตัวคั่น

เหตุใดจึงใช้ฟังก์ชัน split() ใน Python?

ต่อไปนี้คือเหตุผลในการใช้งาน Python ฟังก์ชัน split():

  • A Python โปรแกรมอาจต้องมีการจัดการสตริง
  • เมื่อคุณต้องการแบ่งสตริงหรือบรรทัดที่มีความยาวมากออกเป็นสตริงย่อยหรือสตริงขนาดเล็กจำนวนมาก
  • ฟังก์ชันนี้ทำงานได้แม้ว่าจะไม่มีตัวคั่นหรือมีช่องว่างอยู่ก็ตาม โดยจะแสดงผลลัพธ์บางอย่าง หรือแบ่งสตริงออกเป็นส่วนๆ
  • ฟังก์ชัน split() จะแบ่งสตริงย่อยในรูปแบบขององค์ประกอบต่างๆ ของสตริงนั้น
  • ฟังก์ชันนี้จะสแกนบรรทัดหรือสตริงเพื่อตรวจหาตัวคั่นเริ่มต้นที่ส่งมาเป็นพารามิเตอร์
  • ฟังก์ชัน split() ช่วยในการจัดการสตริงได้อย่างมีประสิทธิภาพ Python รหัส.

ไวยากรณ์ของฟังก์ชัน split() ใน Python

ฟังก์ชัน split() ใน Python ฟังก์ชัน `split()` จะแสดงรายการคำในแต่ละบรรทัดหรือสตริง โดยสตริงเหล่านั้นจะถูกคั่นด้วยสตริงตัวคั่นเสมอ ฟังก์ชันนี้จะให้สตริงย่อยหนึ่งสตริงหรือมากกว่าจากสตริงหลัก ไวยากรณ์ของ `split()` ประกอบด้วยฟังก์ชันที่มีพารามิเตอร์สองตัว ได้แก่ ตัวคั่นและค่าสูงสุด พร้อมค่าส่งคืน

ไวยากรณ์ของฟังก์ชัน split() แสดงไว้ด้านล่าง:

ไวยากรณ์:

string. split (separator, max)

พารามิเตอร์ต่างๆ ของฟังก์ชันนี้มีรายละเอียดดังต่อไปนี้:

  • แยก: มีการกำหนดตัวคั่นเพื่อระบุตัวแบ่ง ด้วยการใช้ตัวคั่น ฟังก์ชัน split() จะแบ่งสตริงหลักออกเป็นสตริงย่อยหลายสตริง
  • พารามิเตอร์ Maxsplit: นี่คือตัวเลขที่จะส่งเข้าไปในฟังก์ชันเพื่อแบ่งสตริงออกเป็นจำนวนครั้งสูงสุดที่ตรงกัน
  • เดินทางกลับ: ฟังก์ชัน split() จะส่งคืนรายการสตริงหลังจากแบ่งหรือแยกสตริงหลักแล้ว

จะแยกสตริงที่เกี่ยวข้องกับตัวคั่นได้อย่างไร?

ตัวคั่นสามารถกำหนดได้ว่าเป็นสตริงที่อยู่ในรูปแบบของช่องว่าง คอมมา เครื่องหมายเซมิโคลอน เครื่องหมายโคลอน และอักขระอื่นๆ ฟังก์ชันนี้จะแสดงผลส่วนเริ่มต้นและส่วนสิ้นสุดของสตริงอักขระ คำ หรือรายการข้อมูล

ให้เราพิจารณาด้านล่าง Python ตัวอย่างการใช้งานฟังก์ชัน split() โดยมีตัวคั่นเข้ามาเกี่ยวข้อง

Python รหัส:

Python รหัส:

text = "Hello World Guru99"
# splits at space
print(text.split())
text = "Hello,World, Guru99"
# splits at ','
print(text.split(", "))
text = "Hello,World:, Guru99"
# Splits at ':'
print(text.split(":"))

Output:

['Hello', 'World', 'Guru99']
['Hello,World', 'Guru99']
['Hello,World', ', Guru99']

ในโค้ดข้างต้น สตริงจะถูกคั่นโดยใช้เครื่องหมายทวิภาค ช่องว่าง และลูกน้ำคั่น

จะแยกสตริงเมื่อมีอักขระใด ๆ ปรากฏอยู่ในสตริงได้อย่างไร?

ฟังก์ชัน split() ใน Python สามารถใช้งานได้หลายวิธี หนึ่งในนั้นคือการใช้ฟังก์ชัน split() เมื่อพบอักขระที่เป็นตัวคั่น ฟังก์ชัน split() สามารถใช้เพื่อระบุอักขระที่สามารถใช้แทน หรือใช้เป็นตัวเลือกทดแทนตัวคั่นที่มีอยู่ในสตริงหลักเพื่อแยกสตริงได้

ลองพิจารณาตัวอย่างด้านล่างนี้เกี่ยวกับการใช้งานฟังก์ชัน split() โดยมีการใช้ตัวอักษรเป็นตัวคั่นในสตริงที่กำหนด

Python รหัส:

text='Hello World Guru99'
#splits with character occurrence
print(text.split("l"))

Output:

['He', '', 'o Wor', 'd Guru99']

ในโค้ดด้านบน สตริงจะถูกแยกโดยใช้ตัวอักษรที่ใช้เป็นตัวคั่น ซึ่งในที่นี้ตัวอักษรที่กำหนดคือ 'l'

จะแยกสตริงออกเป็นรายการได้อย่างไร?

ฟังก์ชัน split() ยังสามารถใช้ในการแยกสตริงเพื่อพิมพ์ออกมาในรูปแบบของลิสต์ได้อีกด้วย โดยคุณสามารถใช้ลูปเพื่อพิมพ์สตริงออกมาเป็นสตริงย่อยต่างๆ ในรูปแบบของลิสต์ได้

ตัวอย่างต่อไปนี้แสดงการใช้งานฟังก์ชัน split()

Python รหัส:

text='Hello World Guru99'
#splits with string in the form of list
list_1 = text.split()
for st in list_1:
    print(st)

Output:

Hello
World
Guru99

ในโค้ดข้างต้น สตริงจะถูกแยกออกจากกันและแสดงรายการทีละรายการโดยใช้ลูป

วิธีการแยกสตริงโดยใช้ตัวดำเนินการแยกสูงสุด (max split operator) ทำได้อย่างไร?

ฟังก์ชัน split() ยังมีตัวเลือกในการแบ่งสตริงออกเป็นจำนวนครั้งสูงสุด หากไม่ได้กำหนดค่าเริ่มต้น ฟังก์ชันจะกำหนดค่า -1 เป็นค่าเริ่มต้น

ลองพิจารณาตัวอย่างการใช้งานฟังก์ชัน split() ด้านล่างนี้

Python รหัส:

text='Hello World Guru99'
split_1 = text.split(',',2)
print(split_1)
text='Hello World Guru99'
split_1 = text.split(',',4)
print(split_1)

Output:

['Hello World Guru99']
['Hello World Guru99']

ในข้างต้น Python รหัส สตริงจะถูกแยกตามจำนวนอินสแตนซ์สูงสุด

วิธีการใช้ฟังก์ชัน split() โดยใช้สตริงย่อยใน Python?

สตริงย่อยสามารถนิยามได้ว่าเป็นสตริงที่อยู่ภายในสตริงหลัก ฟังก์ชัน split() สามารถใช้เพื่อแยกสตริงหลักตามสตริงย่อยที่อยู่ในสตริงหลักนั้นได้

ลองพิจารณาตัวอย่างการใช้งานฟังก์ชัน split() ด้านล่างนี้

Python รหัส:

text='Hello World Guru 99'
split_1 = text.split('Guru',2)
print(split_1[1])
text='Hello World Guru99'
split_1 = text.split('Guru',2)
print(split_1[0])

Output:

99
Hello World

ในโค้ดด้านบน สตริงหลักถูกแยกออกโดยใช้สตริงย่อย 'Guru' ที่มีอยู่ในสตริงที่กำหนด ดังนั้นส่วนก่อนและหลัง 'Guru' จะถูกส่งคืน

ความสำคัญของฟังก์ชัน split() ใน Python

ฟังก์ชัน split() มีประโยชน์มากทีเดียว Python ฟังก์ชัน `split()` มีประโยชน์อย่างมากในการทำงานกับโปรเจกต์การวิเคราะห์ข้อความ ฟังก์ชัน `split()` สามารถใช้งานได้หลายรูปแบบที่ปรับแต่งได้ เช่น การแบ่งสตริงตามตัวคั่น หรือแม้ว่าไม่มีตัวคั่น ฟังก์ชัน `split()` ก็ยังสามารถใช้แบ่งสตริงตามช่องว่างในสตริงได้

ฟังก์ชัน split() ยังสามารถแยกสตริงได้แม้จะมีตัวคั่นหลายตัว นี่แสดงให้เห็นว่าฟังก์ชัน split() มีความสำคัญและมีความยืดหยุ่นสูงเพียงใด Python เป็น

คำถามที่พบบ่อย

ทั้งสองฟังก์ชันส่งคืนค่าเป็นลิสต์ โดย split() นับจากด้านซ้าย และ rsplit() นับจากด้านขวา ความแตกต่างเพียงอย่างเดียวคือค่า maxsplit

ใช้ splitlines() เพราะมันสามารถจดจำ \n, \r และ \r\n ได้ในทุกแพลตฟอร์ม และจัดการกับการขึ้นบรรทัดใหม่แบบผสมได้ดีกว่าการใช้ split(“\n”) ธรรมดา

ไม่ str.split() รับตัวคั่นคงที่เพียงตัวเดียว หากต้องการตัวคั่นหลายตัวพร้อมกัน ให้ใช้ re.split() กับรูปแบบเช่น [;,\s]+

แยกเป็นรายการคำ กลับด้านด้วย [::-1] แล้วรวมเข้าด้วยกันอีกครั้ง: ” “.join(“Hello World”.split()[::-1]) จะคืนค่า “World Hello”

การแยก “” โดยไม่มีตัวคั่นจะคืนค่าเป็น []; การแยกด้วย “,”) จะคืนค่าเป็น [”] หากไม่มีอาร์กิวเมนต์ ฟังก์ชัน split() จะยุบช่องว่างที่อยู่ติดกัน

split() จะส่งคืนส่วนประกอบทั้งหมดเป็นลิสต์ ส่วน partition() จะแยกตามตัวคั่นแรก โดยส่งคืนทูเปิลสามส่วน ได้แก่ ก่อน ตัวคั่น และหลัง

ในแมชชีนเลิร์นนิงและ NLP ฟังก์ชัน split() จะทำการแยกคำขั้นพื้นฐาน โดยแบ่งข้อความออกเป็นคำหรือฟิลด์เพื่อเตรียมข้อมูลสำหรับการฝึกฝน

ใช่แล้ว GitHub Copilot จะเติมคำอัตโนมัติสำหรับการเรียกใช้ฟังก์ชัน split() โดยใช้พารามิเตอร์ separator และ maxsplit ส่วนเครื่องมือ AI ของเอเจนต์จะเขียนตรรกะการแยกวิเคราะห์และรันการทดสอบของคุณ

สรุปโพสต์นี้ด้วย: