Nếu bạn không muốn, from __future__ import print_function
bạn có thể làm như sau:
a = 100
b = True
print a if b else "", # Note the comma!
print "see no new line"
Bản in nào:
100 see no new line
Nếu bạn không thích from __future__ import print_function
hoặc đang sử dụng python 3 trở lên:
from __future__ import print_function
a = False
b = 100
print(b if a else "", end = "")
Thêm cái khác là thay đổi duy nhất bạn cần thực hiện để làm cho mã của bạn chính xác về mặt cú pháp, bạn cần cái khác cho biểu thức điều kiện ("trong dòng nếu khối khác")
Lý do tôi không sử dụng None
hoặc 0
như những người khác trong các chủ đề đã sử dụng, là bởi vì sử dụng None/0
sẽ gây ra các chương trình để print None
hoặc print 0
trong trường hợp b
là False
.
Nếu bạn muốn đọc về chủ đề này, tôi đã bao gồm một liên kết đến ghi chú phát hành cho bản vá mà tính năng này đã được thêm vào Python.
'Mẫu' ở trên rất giống với mẫu được hiển thị trong PEP 308:
Cú pháp này có vẻ lạ và ngược; Tại sao điều kiện đi ở giữa biểu thức chứ không phải ở phía trước như trong C's c? x: y? Quyết định đã được kiểm tra bằng cách áp dụng cú pháp mới cho các mô-đun trong thư viện chuẩn và xem cách mã kết quả được đọc. Trong nhiều trường hợp sử dụng biểu thức điều kiện, một giá trị dường như là 'trường hợp chung' và một giá trị là 'trường hợp ngoại lệ', chỉ được sử dụng trong những trường hợp hiếm hơn khi điều kiện không được đáp ứng. Cú pháp có điều kiện làm cho mẫu này rõ ràng hơn một chút:
nội dung = ((doc + '\ n') nếu doc khác '')
Vì vậy, tôi nghĩ rằng tổng thể đây là một cách hợp lý để phê duyệt nó nhưng bạn không thể tranh luận với sự đơn giản của:
if logging: print data