2011-08-03 39 views
5

trong C (và C họ ngôn ngữ) một biểu thức (4+7, 5+2) trả về 7. Nhưng cùng một biểu thức trong Python sẽ dẫn đến một tuple (11, 7)không python có một toán tử dấu phẩy như C

Vì vậy, python có một toán tử dấu phẩy như C?

+5

Không, nhưng câu hỏi thực sự là lý do tại sao bạn muốn một –

+3

Đẹp hơn là xấu xí. Thưa thưa thớt tốt hơn là dày đặc. Số lượng khả năng đọc. –

+1

Nếu Python có toán tử dấu phẩy vô dụng thì tôi không tin rằng Python có thể đọc được nữa. –

Trả lời

7

Bạn nên sử dụng một cái gì đó như thế này để thay thế nó:

comma_operated = (4+7, 5+2)[-1] 

nhưng như đã nói một cách chính xác trong các ý kiến, tại sao bạn lại muốn nó? Nó được sử dụng trong C hoặc C++ khá hiếm khi và có những lý do tốt cho điều đó.

+1

nice :) thực sự, rất hữu ích để gỡ lỗi một danh sách hiểu: bạn có thể thực hiện một bản in trong hiểu để xem những gì đang xảy ra –

5

AFAIK, no. Mặc dù bạn luôn có thể mô phỏng điều này bằng cách sử dụng hai dòng thay vì một dòng. :-)

x = (call_one(), call_two()) 

# is almost the same as 

call_one() 
x = call_two() 

# or 
x = (call_one(), call_two())[1] 
Các vấn đề liên quan