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

Python Reverse String:คำแนะนำทีละขั้นตอน

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


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

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

ในบทช่วยสอนนี้ เราจะพูดถึงสามวิธีที่คุณสามารถใช้ย้อนกลับสตริง n Python เราจะเริ่มต้นด้วยการทบทวนสตริง Python ต่อจากนี้เราจะพูดถึงการแยกสตริง จากนั้นเราจะสำรวจวิธีใช้ reversed() และ เข้าร่วม() ฟังก์ชั่น. สุดท้ายเราจะดูการเรียกซ้ำ

วิธีการย้อนกลับสตริงใน Python

มีสามวิธีที่คุณสามารถใช้ย้อนกลับสตริงได้:

  • ตัดสตริงด้วย [::-1] ไวยากรณ์
  • การใช้ฟังก์ชัน reversed() เพื่อสร้างตัววนซ้ำแบบย้อนกลับที่อ่านสตริงและย้อนกลับเนื้อหา
  • การใช้ฟังก์ชันแบบเรียกซ้ำ

มาพูดถึงวิธีการทั้งสามนี้กัน

Python Reverse String โดยใช้ Slicing

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

สมมติว่าเรามีสตริงที่มีค่า "Python" เราต้องการเห็นสตริงนี้ในลำดับที่กลับกัน เราสามารถทำได้โดยใช้ [::-1] ไวยากรณ์:

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

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

string = "Python"
reversed = string[::-1]

print(reversed)

รหัสของเราส่งคืน:nohtyP .

เราประกาศตัวแปร Python ที่เรียกว่า reverse ซึ่งเก็บสตริงที่ย้อนกลับของเรา [::-1] ไวยากรณ์จะถูกเพิ่มที่ส่วนท้ายของตัวแปรที่มีค่าสตริง “Python” ของเรา

นี่เป็นวิธีที่มีประสิทธิภาพในการใช้งานเพราะสั้นและเรียบง่าย คุณต้องเพิ่มเพียง [::-1] ที่ส่วนท้ายของสตริงเพื่อย้อนกลับ

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

Reverse String Python ใช้ reversed()

Python มีฟังก์ชันในตัวที่ใช้ในการสร้างตัววนซ้ำแบบย้อนกลับ:reversed() การทำงาน. ตัววนซ้ำนี้ใช้งานได้เนื่องจากมีการจัดทำดัชนีสตริง ดังนั้นแต่ละค่าในสตริงจึงสามารถเข้าถึงได้ทีละรายการ

จากนั้นจึงใช้ตัววนซ้ำแบบย้อนกลับเพื่อวนซ้ำองค์ประกอบในสตริงในลำดับที่กลับกัน

นี่คือตัวอย่างที่ใช้ reversed() เพื่อสร้างตัววนซ้ำแบบย้อนกลับที่พิมพ์สตริงของเราในลำดับที่กลับกัน:

for char in reversed("Python"):
	print(char)

รหัสของเราส่งคืน:

n
o
h
t
y
P

ในโค้ดของเรา เราระบุ Python for วนซ้ำผ่านแต่ละรายการใน reversed() กระบวนการ. คุณจะเห็นได้ว่าโค้ดของเราได้พิมพ์สตริงของเราในลำดับที่กลับกัน

รหัสของเราพิมพ์อักขระแต่ละตัวในบรรทัดใหม่ เนื่องจากเราใช้ reversed() ด้วย สำหรับ ห่วง หากเราต้องการให้สตริงของเราปรากฏในบรรทัดเดียว เราจะต้องใช้ reversed() ด้วย join() วิธีการ

เราสามารถใช้ join() วิธีการรวมอักขระทั้งหมดจาก reversed() . ของเรา วนซ้ำเป็นสตริงเดียว

นี่คือตัวอย่างที่ใช้ reversed() และ เข้าร่วม() เพื่อย้อนกลับสตริง Python:

"".join(reversed("Python"))

รหัสของเราส่งคืน:nohtyP .

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

ย้อนกลับสตริง Python:การเรียกซ้ำ

การเรียกซ้ำเป็นคำที่ใช้ในวิทยาการคอมพิวเตอร์เพื่ออธิบายฟังก์ชันที่เรียกตัวเองว่าโดยตรงหรือโดยอ้อม นี่คือตัวอย่างของการย้อนกลับสตริงผ่านการเรียกซ้ำของ Python:

def reverse_string(string):
	if len(string) == 0:
		return string
	else:
		return reverse_string(string[1:]) + string[0]

reverse_string("Python")

รหัสของเราส่งคืน:nohtyP .

วิธีนี้ใช้การแบ่งส่วนเพื่อย้อนกลับสตริงของเรา แทนที่จะใช้การดำเนินการชิ้นเดียวเหมือนที่เราทำก่อนหน้านี้ เราใช้ฟังก์ชัน Python ที่เรียกว่า reverse_string .

ฟังก์ชันนี้แบ่งสตริงของเราและส่งคืนเวอร์ชันที่ย้อนกลับ วิธีนี้มีประสิทธิภาพมาก ส่งผลให้นักพัฒนา Python หลายคนชื่นชอบ

ฟังก์ชันของเรายอมรับสตริงที่เราต้องการย้อนกลับ หากไม่มีอักขระในสตริง ค่าของสตริงจะถูกส่งกลับ มิฉะนั้น เราจะเรียกใช้ฟังก์ชันอีกครั้งโดยใช้ไวยากรณ์ string[1:] เป็นอาร์กิวเมนต์ เราเพิ่มอักขระตัวแรกในสตริงของเราที่ส่วนท้ายของฟังก์ชันนี้ที่ส่งคืน

บทสรุป

แม้ว่า Python จะไม่มีฟังก์ชันย้อนกลับในตัว แต่ก็มีบางวิธีที่เราสามารถใช้เพื่อย้อนกลับสตริงได้

เราสามารถใช้ [::-1] วิธีการสไลซ์เพื่อย้อนกลับสตริงผ่านการสไลซ์ reversed() และ เข้าร่วม() ฟังก์ชันเพื่อย้อนกลับสตริงผ่านการวนซ้ำแบบย้อนกลับ หรือการเรียกซ้ำเพื่อย้อนกลับสตริงโดยใช้ฟังก์ชันแบบเรียกซ้ำ

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

หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการเขียนโค้ด Python โปรดอ่านคู่มือ How to Learn Python ที่ครอบคลุม