Hướng dẫn how do you write an if statement in python with one line? - làm thế nào để bạn viết một câu lệnh if trong python với một dòng?

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 how do you write an if statement in python with one line? - làm thế nào để bạn viết một câu lệnh if trong python với một dòng?

Ivanleoncz

8.0874 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 how do you write an if statement in python with one line? - làm thế nào để bạn viết một câu lệnh if trong python với một dòng?

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.3092 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  else value_false

hoặc

[value_false, value_true][]

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 how do you write an if statement in python with one line? - làm thế nào để bạn viết một câu lệnh if trong python với một dòng?

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 how do you write an if statement in python with one line? - làm thế nào để bạn viết một câu lệnh if trong python với một dòng?

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

Bạn có thể làm 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.One-line if statement is only possible if there's a single line of code following the condition.

Làm thế nào để bạn viết nếu và khác trong một dòng trong Python?

Python nếu ....
Trước hết điều kiện2 được đánh giá, nếu trả về đúng thì expr2 được trả về ..
Nếu điều kiện2 trả về false thì điều kiện1 được đánh giá, nếu trả về đúng thì expr1 được trả về ..
Nếu điều kiện1 cũng trả về sai thì khác sẽ được thực thi và expr được trả về ..

Làm thế nào để bạn viết trên một dòng trong Python?

Làm thế nào để viết một vòng lặp cho một dòng mã Python duy nhất ?..
Phương pháp 1: Nếu cơ thể vòng lặp bao gồm một câu lệnh, chỉ cần viết câu lệnh này vào cùng một dòng: Đối với I trong phạm vi (10): in (i).....
Phương pháp 2: Nếu mục đích của vòng lặp là tạo danh sách, hãy sử dụng danh sách hiểu thay vào đó: bình phương = [i ** 2 cho i trong phạm vi (10)] ..

Làm thế nào để bạn viết một tuyên bố IF trong Python?

Một "câu lệnh if" được viết bằng cách sử dụng từ khóa IF ...
Bằng: a == b ..
Không bằng: A! = B ..
Ít hơn: A
Nhỏ hơn hoặc bằng: a
Lớn hơn: a> b ..
Lớn hơn hoặc bằng: a> = b ..