Hướng dẫn can i use an if statement without else in python? - tôi có thể sử dụng câu lệnh if mà không có lệnh khác trong python không?

Thủ công một lớp lót Python đẹp là một nghệ thuật cũng như một khoa học. Trong hướng dẫn này, bạn sẽ học cách nén một câu lệnh IF mà không có nhánh khác vào một dòng mã Python duy nhất.

Python một dòng nếu không có

Vấn đề: Cái gì mà một lớp lót tương đương với câu lệnh nếu không có nhánh khác?: What’s the one-liner equivalent of the simple if statement without an else branch?

Đây là một ví dụ:

condition = True

if condition:
    print('hi')

# hi

Bạn có thể muốn (i) in một cái gì đó, (ii) gán một giá trị cho một biến hoặc (iii) nối một phần tử vào danh sách nếu điều kiện giữ.

Trong bài viết này, tôi sẽ chỉ cho bạn bốn phương pháp để thực hiện mục tiêu này. Tất cả bốn phương pháp thường được áp dụng và bạn có thể dễ dàng tùy chỉnh chúng vào ứng dụng cụ thể của mình.

Hãy để có một cái nhìn tổng quan nhanh về bốn phương pháp trong Shell mã tương tác của chúng tôi:

Bài tập: Chạy mã cho cả hai điều kiện TrueFalse. Có phải tất cả các phương pháp tương đương về mặt ngữ nghĩa?: Run the code for both True and False conditions. Are all methods semantically equivalent?

Phương pháp 1: Câu lệnh IF LINER

Đầu tiên cũng là phương pháp đơn giản nhất: nếu bạn muốn một lớp phủ mà không có câu lệnh khác, chỉ cần viết câu lệnh IF trong một dòng duy nhất! Có nhiều thủ thuật (như sử dụng dấu chấm phẩy) giúp bạn tạo các câu lệnh một lớp. Nhưng đối với một cơ thể nếu chỉ có một tuyên bố, nó cũng đơn giản như tránh bị phá vỡ dòng.if you want a one-liner without an else statement, just write the if statement in a single line! There are many tricks (like using the semicolon) that help you create one-liner statements. But for an if body with only one statement, it’s just as simple as avoiding the line break.

condition = True

# Method 1: One-Liner If
if condition: print('hi')
# hi

Phương pháp này là hoàn toàn hợp lệ và bạn có thể thấy nó trong thực tế. Tuy nhiên, tôi phải đề cập rằng nó vi phạm tiêu chuẩn PEP8 (nhiều câu trong một dòng). Do đó, bạn không nên coi đây là mã Pythonic (mặc dù có những điều tồi tệ hơn dưới ánh mặt trời).

Phương pháp 2: Ternary với chi nhánh khác

Chắc chắn, bạn cũng có thể sử dụng toán tử ternary:

Hướng dẫn can i use an if statement without else in python? - tôi có thể sử dụng câu lệnh if mà không có lệnh khác trong python không?

Nếu bạn cần một sự bồi dưỡng nhanh chóng trên nhà điều hành ternary, hãy xem bài viết blog chi tiết của tôi. Toán tử ternary thường được sử dụng để gán các giá trị có điều kiện. Nhưng bạn cũng có thể vứt bỏ giá trị trả lại bằng cách không gán kết quả cho bất kỳ biến nào. Trong trường hợp này, không có vấn đề gì nếu bạn sử dụng None hoặc bất kỳ giá trị trả về hình nộm nào khác do kết quả của nhánh khác:

condition = True

# Method 2: Ternary with Dummy
print('hi') if condition else None

Nó có thể đọc được, ngắn gọn và súc tích và tôi thích điều này (tốt, tôi có thể hơi thiên vị với tư cách là tác giả của cuốn sách Python One-Liners). Chắc chắn, mọi người sẽ hỏi tại sao bạn đã viết nó trong nhiều dòng. Nhưng ở đâu là niềm vui ở đó?

Phương pháp 3: Ternary với giá trị mặc định để gán

Nếu bạn cần gán một giá trị một cách có điều kiện cho một biến, nhưng bạn muốn làm như vậy mà không cần một nhánh khác, bạn có thể làm như sau:

condition = True

# Method 3: Ternary with Dummy for Assignment
x = 42 if condition else None

Nếu điều kiện không được giữ, giá trị giả của hình nộm None được gán cho biến.

Phương pháp 4: ngắn mạch

Phương pháp này tôi thích nhất. Nó sử dụng tối ưu hóa Python có tên là SHOK Circuiting, cho các toán tử Boolean: toán tử logic and chỉ cần trả về toán hạng thứ hai nếu lần thứ nhất là True. Ở đó, không có sự chuyển đổi boolean nào của toán hạng thứ hai, nó chỉ trở lại như vậy.

Nếu toán hạng đầu tiên là False, toán hạng thứ hai thậm chí không được đánh giá.

Bạn có thể sử dụng điều này để thực hiện có điều kiện theo nhánh IF

condition = True

# Method 1: One-Liner If
if condition: print('hi')
# hi
2 hoặc bất kỳ chức năng mã nào khác.

condition = True

# Method 4: Short circuiting
condition and print('hi')

Có hai tùy chọn:

  • condition = True
    
    # Method 1: One-Liner If
    if condition: print('hi')
    # hi
    3: Vì toán hạng đầu tiên là True, toán hạng thứ hai được trả lại. Do đó, câu lệnh
    condition = True
    
    # Method 1: One-Liner If
    if condition: print('hi')
    # hi
    2 được thực thi và chuỗi
    condition = True
    
    # Method 1: One-Liner If
    if condition: print('hi')
    # hi
    6 xuất hiện trên màn hình.
  • condition = True
    
    # Method 1: One-Liner If
    if condition: print('hi')
    # hi
    7: Vì toán hạng đầu tiên là False, toán hạng thứ hai thậm chí không được đánh giá vì kết quả của hoạt động logic andFalse. Do đó, tuyên bố
    condition = True
    
    # Method 1: One-Liner If
    if condition: print('hi')
    # hi
    2 không bao giờ được thực thi.

Đi đâu từ đây?

Đủ lý thuyết. Hãy để có được một số thực hành!

Các lập trình viên được trả tiền sáu con số và hơn thế nữa vì họ có thể giải quyết các vấn đề hiệu quả hơn bằng cách sử dụng trí thông minh máy móc và tự động hóa.

Để trở nên thành công hơn trong việc mã hóa, giải quyết nhiều vấn đề thực sự hơn cho người thực. Đó là cách bạn đánh bóng các kỹ năng bạn thực sự cần trong thực tế. Rốt cuộc, những gì mà việc sử dụng lý thuyết học tập mà không ai cần?

Bạn xây dựng các kỹ năng mã hóa có giá trị cao bằng cách làm việc trên các dự án mã hóa thực tế!

Bạn có muốn ngừng học hỏi với các dự án đồ chơi và tập trung vào các dự án mã thực tế kiếm tiền cho bạn và giải quyết các vấn đề thực sự cho mọi người?

Nếu câu trả lời của bạn là có !, Hãy xem xét việc trở thành một nhà phát triển tự do Python! Đó là cách tốt nhất để tiếp cận nhiệm vụ cải thiện các kỹ năng trăn của bạn, ngay cả khi bạn là người mới bắt đầu hoàn toàn.YES!, consider becoming a Python freelance developer! It’s the best way of approaching the task of improving your Python skills—even if you are a complete beginner.

Nếu bạn chỉ muốn tìm hiểu về cơ hội làm việc tự do, vui lòng xem hội thảo trên web miễn phí của tôi Làm thế nào để xây dựng kỹ năng thu nhập cao của bạn Python và tìm hiểu cách tôi phát triển kinh doanh mã hóa của mình trực tuyến và làm thế nào bạn có thể, từ sự thoải mái của bạn riêng nhà.

Tham gia hội thảo trên web miễn phí ngay bây giờ!

Hướng dẫn can i use an if statement without else in python? - tôi có thể sử dụng câu lệnh if mà không có lệnh khác trong python không?

Trong khi làm việc như một nhà nghiên cứu trong các hệ thống phân tán, Tiến sĩ Christian Mayer đã tìm thấy tình yêu của mình đối với việc dạy các sinh viên khoa học máy tính.

Để giúp học sinh đạt được thành công cao hơn của Python, ông đã thành lập trang web giáo dục chương trình Finxter.com. Ông là tác giả của cuốn sách lập trình phổ biến Python Oneer (Nostarch 2020), đồng tác giả của loạt sách Break Break Python, những cuốn sách tự xuất bản, người đam mê khoa học máy tính, freelancer và chủ sở hữu của một trong 10 blog Python lớn nhất trên toàn thế giới.

Niềm đam mê của ông là viết, đọc và mã hóa. Nhưng niềm đam mê lớn nhất của anh là phục vụ các lập trình viên đầy tham vọng thông qua Finxter và giúp họ tăng cường các kỹ năng của họ. Bạn có thể tham gia học viện email miễn phí của anh ấy ở đây.

Chúng ta chỉ có thể sử dụng nếu tuyên bố trong Python?

Python Nếu cú pháp câu lệnh TẠI ĐÂY, chương trình đánh giá biểu thức kiểm tra và sẽ thực hiện (các) câu lệnh nếu biểu thức kiểm tra là đúng.Nếu biểu thức kiểm tra là sai, (các) câu lệnh không được thực thi.Trong Python, cơ thể của câu lệnh IF được chỉ định bằng vết lõm.the program evaluates the test expression and will execute statement(s) only if the test expression is True . If the test expression is False , the statement(s) is not executed. In Python, the body of the if statement is indicated by the indentation.

Một tuyên bố nếu không có khác?

Trong thực tế, rất phổ biến để có nếu không có một người khác khi không có hoạt động cụ thể cần được thực hiện khi điều kiện là sai.it is very common to have an if without an else when there is no specific activity that needs to be performed when the condition is false.

Khác là bắt buộc trong nếu?

Câu lệnh IF chỉ thực thi nếu điều kiện là đúng.Câu lệnh khác không bắt buộc và sẽ chỉ thực thi nếu điều kiện IF không thành công.The else statement is not mandatory and will execute only if the if condition fails.

Chúng ta có thể có nếu và Elif mà không có trong Python?

Các câu lệnh IF có thể được viết mà không có câu lệnh khác hoặc Elif, nhưng khác và Elif không thể được sử dụng mà không có..