Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

สตริงย่อย Python:คำแนะนำทีละขั้นตอน

สตริงย่อย Python เป็นส่วนหนึ่งของข้อความที่นำมาจากสตริง คุณสามารถแยกสตริงย่อยใน Python ได้โดยใช้การแบ่งส่วน โดยมีรูปแบบ:YourString[StartingIndex:StoppingIndex:CharactersToSkip]


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

คุณทำสิ่งนี้ให้สำเร็จในภาษาการเขียนโปรแกรม Python ได้อย่างไร นั่นคือที่ที่สตริง สไลซ์ เข้ามาเล่น โดยใช้เทคนิคที่เรียกว่า slicing เราสามารถรับส่วนเฉพาะของสตริง ซึ่งจะกลายเป็น สตริงย่อย . ในบทช่วยสอนนี้ เราจะอธิบายวิธีการทำงานของสตริงย่อยใน Python และวิธีที่คุณสามารถใช้การแบ่งส่วนเพื่อสร้างสตริงย่อยของคุณเอง

ดัชนีสตริง:ทบทวน

ก่อนที่เราจะพูดถึงการสไลซ์และซินแทกซ์สไลซ์ เราต้องดูก่อนว่าสตริง Python ถูกสร้างดัชนีอย่างไร

ใน Python สตริงคือลำดับของอักขระตั้งแต่หนึ่งตัวขึ้นไปซึ่งอาจรวมถึงตัวเลข ช่องว่าง ตัวอักษร หรือสัญลักษณ์ คุณสามารถเข้าถึงบางส่วนของสตริงได้ในลักษณะเดียวกับที่คุณทำกับลำดับอื่นๆ เช่น รายการ

อักขระแต่ละตัวในสตริงมีค่าดัชนีของตัวเอง ซึ่งระบุตำแหน่งของอักขระในสตริง ตัวเลขเหล่านี้เริ่มต้นด้วยหมายเลขดัชนี 0 ตัวอย่างเช่น นี่คือวิธีที่สตริง Python Substrings จะถูกแสดง:

P t h o n
คุณ b s t ฉัน n g !
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

อักขระตัวแรกในสตริงของเรา (P ) มีค่าดัชนีเป็น 0 ! ตัวละคร มีค่าดัชนีเท่ากับ 16

เนื่องจากอักขระแต่ละตัวมีหมายเลขดัชนีของตัวเอง เราจึงสามารถอ่านและเปลี่ยนอักขระแต่ละตัวในสตริงของเราได้

81% ของผู้เข้าร่วมกล่าวว่าพวกเขารู้สึกมั่นใจมากขึ้นเกี่ยวกับโอกาสในการทำงานด้านเทคโนโลยีหลังจากเข้าร่วม bootcamp จับคู่กับ Bootcamp วันนี้

ผู้สำเร็จการศึกษาจากหลักสูตร bootcamp โดยเฉลี่ยใช้เวลาน้อยกว่าหกเดือนในการเปลี่ยนอาชีพ ตั้งแต่เริ่มต้น bootcamp ไปจนถึงหางานแรก

สตริงย่อยของ Python String

สมมติว่าเราต้องการรับอักขระสามตัวแรกจากสตริง เราทำอย่างไร หรือถ้าเราต้องการดึงอักขระสองตัวสุดท้ายในสตริงล่ะ?

เราสามารถใช้เทคนิคที่เรียกว่า slicing เพื่อดึงข้อมูลบางส่วนจากสตริง นี่คือที่ที่เราระบุลำดับของอักขระจากสตริงที่เราต้องการดึงข้อมูล เราสามารถใช้สไลซ์เพื่อรับข้อมูลใดๆ ที่เราต้องการจากสตริง ไวยากรณ์ที่เราใช้คือ:

string[start:end:step]

มีสามองค์ประกอบในสไลซ์:

  • เริ่มต้น:ตำแหน่งดัชนีที่สไลซ์ของเราควรเริ่มต้น นี่คือ 0 โดยค่าเริ่มต้น
  • end:ตำแหน่งที่ชิ้นสิ้นสุด อักขระที่ตำแหน่งสิ้นสุดไม่รวมอยู่ในสไลซ์ โดยค่าเริ่มต้น end คือความยาวของสตริง
  • ขั้นตอน:สั่งให้สไลซ์ละเว้นอักขระ N ทุกตัว N เท่ากับขั้นตอนที่คุณระบุ ขั้นตอนจะเท่ากับ 1 โดยค่าเริ่มต้น

สตริงย่อย Python:ตัวอย่าง

ดึงอักขระสามตัวแรก

เราจะดึงอักขระสามตัวแรกจากสตริง ในการทำเช่นนั้น เราจะใช้ไวยากรณ์การแบ่งส่วน:

ourString = "Python Substring!"
print(ourString[0:3])

ผลลัพธ์สำหรับรหัสของเราคือ:

Pyt

ทิ้งหมายเลขเริ่มต้นไว้

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

เราสามารถใช้เทคนิคนี้เพื่อดึงอักขระสามตัวแรกจากสตริงโดยไม่ต้องระบุ 0 เป็นหมายเลขเริ่มต้นของเรา:

ourString = "Python Substring!"
print(ourString[:3])

รหัสของเราส่งคืนผลลัพธ์เดียวกันกับตัวอย่างก่อนหน้าของเรา เราไม่ได้ระบุค่าเริ่มต้น นี่เป็นเพราะการเริ่มต้นเป็น 0 โดยค่าเริ่มต้น เราต้องการดึงอักขระจากจุดเริ่มต้นของสตริงเพื่อให้รูปแบบนี้ใช้งานได้

ดึงอักขระสองตัวสุดท้าย

เราสามารถดึงอักขระห้าตัวสุดท้ายของสตริงโดยใช้ค่าดัชนีลบและตัวเลขเริ่มต้น:

value = "Python"
print(value[-2:])

รหัสของเราส่งคืน:on. เราได้ระบุค่าเดียวเท่านั้น:-2 นี่คือหมายเลขเริ่มต้นของเรา -2 บอกให้สไลซ์ของเราเริ่มดึงอักขระจากตำแหน่งดัชนีที่สองจนถึงตำแหน่งสุดท้ายในสตริงของเรา

ตัวอย่างอื่นๆ

เราได้เตรียมตัวอย่างอื่นๆ สองสามตัวอย่างเพื่อช่วยให้คุณเรียนรู้วิธีการใช้วิธีการแบ่งส่วน

ดึงอักขระตัวสุดท้ายในสตริง

value = "Python"
print(value[-1])

Output: n

เราได้ระบุเฉพาะค่าเริ่มต้นในตัวอย่างนี้ ไม่มีค่าสิ้นสุด ซึ่งหมายความว่าสตริงของเราจะดึงเฉพาะอักขระตัวสุดท้ายเท่านั้น

ดึงตัวละครในช่วง 2 และ 3

value = "Python"
print(value[2:3])

Output: t

ค่าเริ่มต้นของเราคือ 2 และค่าสิ้นสุดของเราคือ 3 อักขระทั้งหมดในช่วง 2 และ 3 จะถูกส่งกลับ ไม่รวมอักขระ 3 เอง เนื่องจากค่าสิ้นสุดเป็นแบบเอกสิทธิ์

ข้ามตัวละครทุกวินาที

value = "Python"
print(value[::2])

Output: Pto

เราใช้โคลอนสองตัวเพื่อบอก Python ว่าเราต้องการใช้พารามิเตอร์เริ่มต้นและสิ้นสุดที่เป็นค่าเริ่มต้น เราได้ระบุ 2 เป็นขั้นตอนของเรา ซึ่งหมายความว่าสไลซ์ของเราจะดึงอักขระทุกวินาทีจากสตริงของเรา

ดู Repl.it จากบทช่วยสอนนี้:



บทสรุป

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

เรียนรู้เพิ่มเติมเกี่ยวกับภาษา Python ในคู่มือการเรียนรู้ Python