2015-10-15 26 views
5

mới thành python và cố gắng vật lộn với các điểm tốt hơn của toán tử gán. Đây là mã của tôi và sau đó là câu hỏi.tại sao x - = x + 4 trả về -4 thay vì 4

x = 5 
    print(x) 
    x -= x + 4 
    print(x) 

mã trên, trả về 5 lần đầu tiên, nhưng chưa -4 khi in lần thứ hai. Trong đầu của tôi, tôi cảm thấy rằng con số thực sự là 4 khi tôi đọc nó là x = x - x +4. Tuy nhiên, tôi biết đó là sai như python là trở lại -4 thay vào đó. Tôi sẽ rất duyên dáng nếu bất cứ ai có thể giải thích cho tôi (trong điều kiện đơn giản như tôi là một người mới) như tôi đã thực sự đập đầu của tôi trên bàn về điều này.

+3

'x- = x + 4' là' 5- (5 + 4) ' –

Trả lời

14

x -= x + 4 có thể được viết như sau:

x = x - (x + 4) = x - x - 4 = -4 
+0

cảm ơn! Tôi nhận ra rằng ngay sau khi tôi đăng bài này nhưng ... hy vọng một người nào đó trong cùng một chiếc thuyền sẽ thấy điều này và không phạm sai lầm của tôi: P – prance

+0

Tất nhiên, nó sẽ được viết tốt hơn nhiều như 'x = -4'. –

Các vấn đề liên quan