Python ฟังก์ชัน strip() ของสตริง: วิธีใช้งาน?

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

Python ฟังก์ชัน strip() จะลบอักขระนำหน้าและต่อท้ายออกจากสตริง และส่งคืนสำเนาที่สะอาด โดยค่าเริ่มต้นจะลบช่องว่าง ในขณะที่อาร์กิวเมนต์อักขระเสริมจะลบอักขระใดๆ ที่ระบุจากทั้งสองด้านของสตริงเดิม

  • 🧹 การลบช่องว่าง: ฟังก์ชัน strip() จะลบช่องว่าง แท็บ และขึ้นบรรทัดใหม่จากทั้งสองด้านเมื่อไม่มีการส่งอาร์กิวเมนต์ใดๆ
  • 🎯 ชุดอักขระ: พารามิเตอร์ที่เป็นสตริง เช่น strip(“*”) จะลบอักขระเหล่านั้นออกทั้งหมด ไม่ใช่สตริงย่อยที่กำหนดไว้ตายตัว
  • ⬅️ แถบ (): เมธอด lstrip() จะตัดอักขระจากด้านซ้ายหรือด้านเริ่มต้นของสตริงเท่านั้น
  • ➡️ แถบ (): เมธอด rstrip() จะตัดอักขระจากด้านขวาหรือด้านท้ายของสตริงเท่านั้น
  • 🔒 ไม่เปลี่ยนรูป: strip() ส่งคืนสตริงใหม่เนื่องจาก Python ไม่สามารถแก้ไขสตริงได้โดยตรง
  • 🤖 ความช่วยเหลือจากเอไอ: ผู้ช่วยเขียนโค้ด AI สร้างโค้ดทำความสะอาด strip() และปรับรูปแบบข้อความให้เป็นมาตรฐานสำหรับการเรียนรู้ของเครื่องและ NLP

Python ฟังก์ชันแถบสตริง ()

ความหมายของ Python เปลื้องผ้า()?

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

ไวยากรณ์ของวิธี strip()

string.strip([characters])

พารามิเตอร์

  • อักขระ: (ตัวเลือกเสริม) อักขระที่ระบุจะถูกลบออกจากต้นและท้ายของสตริงเดิม
  • หากไม่ได้ระบุพารามิเตอร์ characters ระบบจะลบช่องว่างที่อยู่ต้นและท้ายของสตริงออก

ราคาย้อนกลับ

การขอ Python เมธอด `strip()` ของสตริงจะส่งคืนค่าดังนี้:

  • สตริงต้นฉบับที่มีช่องว่างสีขาวถูกลบออกจากจุดเริ่มต้นและจุดสิ้นสุด หากไม่ได้ระบุอักขระที่จะลบ
  • ในกรณีที่สตริงไม่มีช่องว่างที่ต้นหรือท้าย สตริงนั้นจะถูกส่งคืนตามเดิมและจะตรงกับสตริงต้นฉบับ
  • หากมีการระบุพารามิเตอร์ characters และ characters ตรงกัน ระบบจะลบ characters ที่อยู่ต้นหรือท้ายของสตริงออก และส่งคืนส่วนที่เหลือของสตริง
  • ในกรณีที่อักขระที่ระบุไม่ตรงกับจุดเริ่มต้นหรือจุดสิ้นสุดของสตริงต้นฉบับ ระบบจะส่งคืนสตริงนั้นตามเดิม

ตัวอย่างฟังก์ชัน strip() ใน Python

ตัวอย่างต่อไปนี้แสดงให้เห็นว่าเมธอด strip() ทำงานอย่างไรกับช่องว่างเริ่มต้น ประเภทข้อมูลที่ไม่ถูกต้อง และพารามิเตอร์อักขระที่กำหนดเอง

ตัวอย่างที่ 1: วิธีการ strip() ใน Python

str1 = "Welcome to Guru99!"
after_strip = str1.strip()

Output:

Welcome to Guru99!

ตัวอย่างที่ 2: strip() กับประเภทข้อมูลที่ไม่ถูกต้อง

การขอ Python ฟังก์ชัน `strip()` ของสตริงใช้งานได้เฉพาะกับสตริงเท่านั้น และจะส่งคืนข้อผิดพลาดหากใช้กับข้อมูลประเภทอื่น เช่น ลิสต์หรือทูเปิล

ตัวอย่างการใช้งานกับลิสต์():

mylist = ["a", "b", "c", "d"]
print(mylist.strip()) 

โค้ดข้างต้นจะทำให้เกิดข้อผิดพลาด:

Traceback (most recent call last):
  File "teststrip.py", line 2, in <module>
    print(mylist.strip())
AttributeError: 'list' object has no attribute 'strip'

ตัวอย่างที่ 3: strip() โดยไม่มีพารามิเตอร์อักขระ

str1 = "Welcome to Guru99!"
after_strip = str1.strip()
print(after_strip)

str2 = "Welcome to Guru99!"
after_strip1 = str2.strip()
print(after_strip1)

Output:

Welcome to Guru99!
Welcome to Guru99!

ตัวอย่างที่ 4: strip() การส่งผ่านพารามิเตอร์อักขระ

str1 = "****Welcome to Guru99!****"
after_strip = str1.strip("*")
print(after_strip)

str2 = "Welcome to Guru99!"
after_strip1 = str2.strip("99!")
print(after_strip1)
str3 = "Welcome to Guru99!"
after_strip3 = str3.strip("to")
print(after_strip3)

Output:

Welcome to Guru99!
Welcome to Guru
Welcome to Guru99!

Python เมธอด lstrip() และ rstrip()

เมธอด strip() จะตัดปลายทั้งสองข้างของสตริงพร้อมกัน แต่ Python นอกจากนี้ยังมีตัวเลือกแบบด้านเดียวสองแบบ เมธอด lstrip() จะลบอักขระเฉพาะจากด้านซ้ายหรือต้นสตริง ในขณะที่เมธอด rstrip() จะลบอักขระเฉพาะจากด้านขวาหรือท้ายสตริง เช่นเดียวกับ strip() ทั้งสองเมธอดจะลบช่องว่างโดยค่าเริ่มต้น และสามารถรับชุดอักขระที่จะลบได้ตามต้องการ

str1 = "***Guru99***"
print(str1.lstrip("*"))
print(str1.rstrip("*"))

Output:

Guru99***
***Guru99

ทั้งสามวิธีแตกต่างกันเพียงแค่ด้านที่ตัดเท่านั้น เมื่อนำไปใช้กับเชือกที่บุด้วยวัสดุนุ่ม” Guru99 “ ผลลัพธ์คือ:

  • แถบ () ลบช่องว่างออกจากทั้งสองด้าน และส่งคืนค่า “Guru99. "
  • อิสตริป() ลบช่องว่างจากด้านซ้ายเท่านั้น โดยคืนค่าเป็น “Guru99 “.
  • แถบ () ลบช่องว่างจากด้านขวาเท่านั้น โดยคืนค่าเป็น " Guru99 "

ทำไม Python มีการใช้ฟังก์ชัน strip() หรือไม่?

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

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

» เรียนรู้เพิ่มเติมเกี่ยวกับ Python วิธีการสตริง

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

ไม่ เมธอด strip() จะลบเฉพาะอักขระที่อยู่ต้นและท้ายสตริงเท่านั้น หากต้องการลบอักขระตรงกลางหรือทุกๆ ส่วนของสตริง ให้ใช้เมธอด replace() แทน ซึ่งจะสแกนทั้งสตริง

ฟังก์ชัน strip() จะตัดเฉพาะตัวอักษรที่อยู่ต้นและท้ายของสตริง ในขณะที่ replace() จะแทนที่ด้วยตัวอักษรที่ตรงกันทุกตำแหน่งตลอดทั้งข้อความ การใช้ strip() จะคงช่องว่างระหว่างคำไว้ ในขณะที่ replace() สามารถลบช่องว่างทั้งหมดในสตริงได้

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

ใช่แล้ว ฟังก์ชัน strip() จะจับคู่ตัวอักษรอย่างแม่นยำ ดังนั้น strip('W') จะลบตัว W พิมพ์ใหญ่ แต่จะคงตัว w พิมพ์เล็กไว้ หากต้องการตัดตัวอักษรโดยไม่คำนึงถึงตัวพิมพ์ใหญ่หรือเล็ก ควรปรับให้เป็นมาตรฐานก่อนด้วย lower() หรือ upper()

ลำดับ Python ไม่มีเมธอด trim() การดำเนินการที่เทียบเท่ากันคือ strip() สำหรับทั้งสองด้าน, lstrip() สำหรับด้านซ้าย และ rstrip() สำหรับด้านขวา นักพัฒนาที่ย้ายจาก Java or Javaสคริปต์จะใช้สิ่งเหล่านี้แทน trim()

ผู้ช่วยเขียนโค้ด AI สร้างโค้ดสำหรับทำความสะอาดข้อมูลด้วยฟังก์ชัน strip(), lstrip() และ rstrip() จากข้อความภาษาธรรมดา ในกระบวนการเรียนรู้ของเครื่องและการประมวลผลภาษาธรรมชาติ (NLP) ฟังก์ชัน strip() จะช่วยทำความสะอาดข้อมูลได้ping ช่องว่างที่กระจัดกระจายจะช่วยปรับข้อความดิบให้เป็นมาตรฐานก่อนการแยกคำ ทำให้คุณภาพข้อมูลและความแม่นยำของโมเดลดีขึ้น

ใช่แล้ว GitHub Copilot จะเติมข้อความอัตโนมัติสำหรับการเรียกใช้ strip(), lstrip() และ rstrip() จากคำอธิบายสั้นๆ เกี่ยวกับเป้าหมายของคุณ เครื่องมือ AI ของ Agentic ทำได้มากกว่านั้น โดยจะปรับปรุงกระบวนการทำความสะอาดข้อความทั้งหมด แล้วทำการทดสอบโดยอัตโนมัติ

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