String slicing
Kế hoạch cấp cao của giải pháp của chúng ta đối với Song Playlist sẽ là một while loop
cái giữ tiến lên miễn là chúng ta không tìm thấy ấn nút 4. Trên mỗi lần lặp, chúng ta sẽ
đọc hai dòng input và xử lí chúng. Cái đó dẫn đến cấu trúc này:
1 button = 0
while button != 4:
# Read button
# Read number of presses
# Process button presses
Trước while loop, chúng ta tạo biến button và làm nó tham chiếu đến số 0 1. Không có cái này,
biến button sẽ không tồn tại, và chúng ta sẽ nhận một NameError trong biểu thức Boolean của
while loop. Bất cứ số nào bên cạnh 4 sẽ làm việc ở đây để châm ngòi lần lặp đầu tiên của loop.
Bên trong while loop này, chúng ta sẽ sử dụng một for loop để xử lí các ấn nút. Cho mỗi xử lí,
chúng ta sẽ sử dụng một phát biểu if để kiểm tra xem nút nào được ấn. Chúng ta sẽ cần 4 khối thụt
dòng các phát biểu trong phát biểu if, một cái cho mỗi 4 nút.
Hãy nói về làm cách nào xử lí mỗi nút. Nút 1 di chuyển song đầu tiên của playlist tới cuối playlist.
Vì chúng ta có một số nhỏ được biết các songs, chúng ta có thể đi với sử dụng chỉ mục hoá chuỗi kí
tự để nối mỗi kí tự. Nhớ rằng kí tự đầu tiên của một string là tại chỉ mục 0, không phải 1. Chúng ta
có thể đặt kí tự đó tại cuối string giống cái này:
>>> songs = ‘ABCDE’
>>> songs = songs[1] + songs[2] + songs[3] + songs[4] + songs[0]
>>> songs
‘BCDEA’
Cái này hơi khó đi và là cụ thể đối với có chính xác 5 songs. Chúng ta có thể sử dụng string slicing để
viết code chung và ít hướng lỗi hơn.