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

ลบตัวอักษรที่ Index คี่ (Odd Index) ออกจากสตริงใน Python


ลบตัวอักษรที่อยู่ในตำแหน่ง index คี่ (1, 3, 5...) จากสตริง โดยสร้างสตริงใหม่เก็บเฉพาะ index คู่

ตัวอย่างโค้ด

def remove_odd_indices(s):
    result = ''
    for i, ch in enumerate(s):
        if i % 2 == 0:  # even index (0-based)
            result += ch
    return result

my_string = "Hi there Will"
print("Original:", my_string)
print("After removing odd indices:", remove_odd_indices(my_string))

ผลลัพธ์

Original: Hi there Will
After removing odd indices: H hr il

คำอธิบาย

  • ใช้ enumerate(s) ได้ทั้ง index และ character

  • เก็บเฉพาะ index ที่หาร 2 ลงตัว (i % 2 == 0)

  • Index 0-based: 0,2,4,6... คือตัวที่ 1,3,5,7... (odd position ในนิยามมนุษย์)

  • วิธีสั้นกว่า: s[::2] (slicing step 2)