Hướng dẫn if-else in one line python - if-else in one line python

1245

Mới! Lưu câu hỏi hoặc câu trả lời và sắp xếp nội dung yêu thích của bạn. Tìm hiểu thêm.
Learn more.

Tôi chỉ tham gia vào Python và tôi thực sự thích sự khó chịu của cú pháp. Tuy nhiên, có cách nào dễ dàng viết một câu ____ 15 -________ 16 -________ 17 để nó phù hợp với một dòng?

Ví dụ:

if count == N:
    count = 0
else:
    count = N + 1

Có cách viết đơn giản hơn không? Ý tôi là, trong Objective-C, tôi sẽ viết điều này như:

count = count == N ? 0 : count + 1;

Có một cái gì đó tương tự cho Python?

Cập nhật

Tôi biết rằng trong trường hợp này, tôi có thể sử dụng

count = count == N ? 0 : count + 1;
8.

Tôi đang hỏi về cú pháp chung.

Hướng dẫn if-else in one line python - if-else in one line python

Ivanleoncz

8.0774 Huy hiệu vàng53 Huy hiệu bạc48 Huy hiệu đồng4 gold badges53 silver badges48 bronze badges

Khi được hỏi ngày 10 tháng 5 năm 2010 lúc 12:58May 10, 2010 at 12:58

Hướng dẫn if-else in one line python - if-else in one line python

5

Đó cụ thể là một biểu thức toán tử ternary hơn là if-then, đây là cú pháp Python

value_when_true if condition else value_when_false

Ví dụ tốt hơn: (Cảm ơn ông Burns) (thanks Mr. Burns)

count = count == N ? 0 : count + 1;
9

Bây giờ với sự phân công và độ tương phản với nếu cú ​​pháp

fruit = 'Apple'
isApple = True if fruit == 'Apple' else False

vs

fruit = 'Apple'
isApple = False
if fruit == 'Apple' : isApple = True

Princelysid

6.2992 Huy hiệu vàng14 Huy hiệu bạc17 Huy hiệu đồng2 gold badges14 silver badges17 bronze badges

Đã trả lời ngày 10 tháng 5 năm 2010 lúc 13:00May 10, 2010 at 13:00

CMSJRCMSJRcmsjr

54.5K10 Huy hiệu vàng70 Huy hiệu bạc62 Huy hiệu Đồng10 gold badges70 silver badges62 bronze badges

16

Hơn nữa, bạn vẫn có thể sử dụng cú pháp "thông thường"

count = count == N ? 0 : count + 1;
5 và kết hợp nó thành một dòng với một dấu hai chấm.

if i > 3: print("We are done.")

hoặc

field_plural = None
if field_plural is not None: print("insert into testtable(plural) '{0}'".format(field_plural)) 

cải xoăn

1511 Huy hiệu bạc10 Huy hiệu đồng1 silver badge10 bronze badges

Đã trả lời ngày 7 tháng 7 năm 2012 lúc 8:41Jul 7, 2012 at 8:41

8

count = 0 if count == N else N+1

- Toán tử ternary. Mặc dù tôi muốn nói rằng giải pháp của bạn dễ đọc hơn thế này.

Đã trả lời ngày 10 tháng 5 năm 2010 lúc 13:00May 10, 2010 at 13:00

CMSJRCMSJRTim Pietzcker

54.5K10 Huy hiệu vàng70 Huy hiệu bạc62 Huy hiệu Đồng57 gold badges494 silver badges550 bronze badges

1

Hơn nữa, bạn vẫn có thể sử dụng cú pháp "thông thường"

count = count == N ? 0 : count + 1;
5 và kết hợp nó thành một dòng với một dấu hai chấm.

value_true if <test> else value_false

hoặc

[value_false, value_true][<test>]

e.g:

count = count == N ? 0 : count + 1;
0

cải xoăn

count = count == N ? 0 : count + 1;
1

e.g.:

count = count == N ? 0 : count + 1;
2

Hướng dẫn if-else in one line python - if-else in one line python

1511 Huy hiệu bạc10 Huy hiệu đồng

Đã trả lời ngày 7 tháng 7 năm 2012 lúc 8:4129 gold badges107 silver badges159 bronze badges

- Toán tử ternary. Mặc dù tôi muốn nói rằng giải pháp của bạn dễ đọc hơn thế này.May 10, 2010 at 13:22

Tim Pietzckertim Pietzckermshsayem

Phù bằng vàng 319K5711 gold badges61 silver badges67 bronze badges

10

count = count == N ? 0 : count + 1;
3

Cú pháp ternary chung:

count = count == N ? 0 : count + 1;
4

Một cách khác có thể là:May 10, 2010 at 15:23

Hướng dẫn if-else in one line python - if-else in one line python

phoenix24phoenix24phoenix24

Điều này đánh giá cả hai nhánh trước khi chọn một. Chỉ để đánh giá nhánh đã chọn:2 gold badges20 silver badges24 bronze badges

0

Làm thế nào để bạn viết nếu

Một dòng các câu lệnh IF-Else trong Python viết một câu lệnh IF-OLSE một dòng trong Python là có thể bằng cách sử dụng toán tử ternary, còn được gọi là biểu thức có điều kiện. Điều này hoạt động tốt. Nhưng bạn có thể hoàn thành công việc bằng cách viết câu lệnh if-else như một biểu thức một lớp lót gọn gàng.using the ternary operator, also known as the conditional expression. This works just fine. But you can get the job done by writing the if-else statement as a neat one-liner expression.

Chúng ta có thể viết nếu

Các ngôn ngữ lập trình khác như C ++ và Java có các toán tử ternary, rất hữu ích để đưa ra quyết định trong một dòng.Python không có toán tử ternary.Nhưng trong Python, chúng ta có thể sử dụng IF-Else trong một dòng và nó sẽ tạo ra hiệu ứng tương tự như toán tử ternary.in python, we can use the if-else in a single line, and it will give the same effect as the ternary operator.

Làm thế nào để bạn viết một câu lệnh IF trong một dòng?

Một câu lệnh IF một dòng chỉ có nghĩa là bạn đang xóa dòng mới và thụt lề.Bạn vẫn đang viết cùng một mã, với sự thay đổi duy nhất là phải mất một dòng thay vì hai.Lưu ý: Câu lệnh IF One-line chỉ có thể nếu có một dòng mã theo điều kiện.. You're still writing the same code, with the only twist being that it takes one line instead of two. Note: One-line if statement is only possible if there's a single line of code following the condition.

Bạn có thể có hai cho các câu trong một dòng trong Python không?

Khoa học dữ liệu thực tế bằng cách sử dụng Python Những tuyên bố này rất có thể được viết trong một dòng bằng cách đặt dấu chấm phẩy ở giữa.Tuy nhiên, thực tế này không được phép nếu có một khối các câu lệnh lồng nhau.These statements can very well be written in one line by putting semicolon in between. However, this practice is not allowed if there is a nested block of statements.