Assume x and y are assigned as follows: x = 5 y = -5 What is the effect of this statement: x, y = (y, x)[::-1]

4 phương ánCó giải thích

Các phương án trả lời

Chọn một phương án
Lời giảiChọn phương án để mở
Đáp án đúng: "The values of x and y are unchanged". Lần theo vế phải: tuple (y, x) được tạo trước với giá trị (-5, 5), sau đó lát cắt [::-1] đảo ngược tuple thành (5, -5); cuối cùng phép gán nhiều biến (tuple unpacking) gán phần tử đầu cho x và phần tử sau cho y, nên x = 5 và y = -5, đúng như ban đầu. Việc đảo hai lần (đổi chỗ khi tạo tuple rồi đảo lại bằng [::-1]) triệt tiêu nhau. "The values of x and y are swapped" chỉ đúng nếu viết x, y = (y, x) mà không có [::-1]. "Both x and y are -5" sai vì x nhận 5, không có bước nào chép -5 vào cả hai biến. "Both x and y are 5" sai vì y nhận phần tử thứ hai của (5, -5) là -5.

Cùng phần 2

Xuất hiện trong 2 bộ đề