Hướng dẫn dùng condition python

Hướng dẫn cách sử dụng toán tử 3 ngôi trong python. Bạn sẽ học được khái niệm toán tử 3 ngôi trong python là gì, cách viết cơ bản cũng như cách sử dụng toán tử 3 ngôi với câu lệnh if trong python sau bài học này.

Toán tử 3 ngôi trong python là gì

Toán tử 3 ngôi trong python là một toán tử được cấu tạo bởi ba đối số gồm điều kiện, kết quả khi điều kiện đúng và kết quả khi điều kiện sai. Kết quả ở đây có thể là một giá trị được trả về, cũng có thể là một xử lý sẽ thực hiện sau đó tùy thuộc vào điều kiện chỉ định là đúng hay sai.
Toán tử 3 ngôi trong python cho phép chúng ta kiểm tra một điều kiện nào đó trong một dòng code duy nhất, thay vì phải sử dụng nhiều câu lệnh if-else, giúp cho việc code đơn giản và thông minh hơn.

Hướng dẫn dùng condition python

Sử dụng toán tử 3 ngôi trong python với lệnh if else

Chúng ta sử dụng toán tử 3 ngôi trong python với lệnh if else bằng hai cách sau đây:

Sử dụng toán tử 3 ngôi trong python để chuyển đổi giá trị theo điều kiện

Chúng ta sử dụng toán tử 3 ngôi trong python để chuyển đổi giá trị theo điều kiện với cú pháp sau đây:

(true_value) if (condition) else (false_value);

Trong đó condition là điều kiện, true_value là giá trị trả về khi điều kiện đúng và false_value là giá trị trả về khi điều kiện sai.

Ví dụ, chúng ta kiểm tra một số có bằng 10 hay không như sau:

Cách viết thông thường

if n == 10:
x = "OK"
else :
x = "NG"

Cách dùngToán tử 3 ngôi

x = "OK" if n == 10 else "NG"

Một ví dụ khác, chúng ta kiểm tra một số là chẵn hay lẻ trong python như sau:
Cách viết thông thường

x = 101
if x % 2 == 0 :
s = 'chẵn'
else:
s = 'lẻ'
print(s)

Cách dùngToán tử 3 ngôi

x = 101
s = 'chẵn' if x % 2 == 0 else 'lẻ'
print(s)

Sử dụng toán tử 3 ngôi trong python để chuyển đổi xử lý theo điều kiện

Chúng ta sử dụng toán tử 3 ngôi trong python để chuyển đổi xử lý theo điều kiện với cú pháp sau đây:

(true_expression) if (condition) else (false_expression);

Trong đó condition là điều kiện, true_expression là xử lý thực hiện khi điều kiện đúng và false_expression là thực hiện khi điều kiện sai.

Ví dụ, cũng với bài toán tìm số chẵn số lẻ, chúng ta kiểm tra số đã cho là chẵn hay lẻ và dùng toán tử 3 ngôi để thực hiện các xử lý in ra màn hình tùy trường hợp như sau:

a = 1
print('chẵn') if a % 2 == 0 else print('lẻ')

Một ví dụ khác, chúng ta nhân số đã cho với các số khác nhau tùy thuộc số đó chẵn hay lẻ như sau:

Cách viết thông thường

a = 1
if a % 2 == 0:
result = a * 2
else:
result = a * 3
print(result)

Cách dùngToán tử 3 ngôi

a = 1
result = a * 2 if a % 2 == 0 else a * 3
print(result)

Lại nữa, bạn có thể sử dụng toán tử 3 ngôi trong câu lệnh if else kèm với các toán tử logic (and, or) như sau:

a = -2
result = 'số âm hoặc chẵn' if a < 0 and a % 2 == 0 else 'số dương hoặc lẻ'
print(result)

a = 1
result = 'số âm và chẵn' if a < 0 and a % 2 == 0 else 'số dương và lẻ'
print(result)

  • Chi tiết về cách sử dụng các toán tử logic trong python, bạn hãy xem tại bài viết toán tử logic trong python

Sử dụng toán tử 3 ngôi trong python với lệnh if elif else

Mặc dù không có cách viết nào được chuẩn bị riêng để chúng ta sử dụng toán tử 3 ngôi trong python với lệnh if elif else và viết lệnh này chỉ trên một dòng, nhưng bằng cách biến tấu và sử dụng lồng toán tử 3 ngôi, chúng ta hoàn toàn có thể làm được điều này.

Cú pháp chúng ta sử dụng với toán tử 3 ngôi lúc này sẽ là:

A if (condition1) else B if (condition2) else C;

Cú pháp trên được dịch ra thành hai toán tử ba ngôi như sau:

A if condition1 else ( B if condition2 else C )

Về thứ tự ưu tiên thực hiện toán tử lúc này, python sẽ thực hiện từ toán tử 3 ngôi con trước, nghĩa là từ trong ra ngoài:

  1. Thực hiện D = ( B if condition2 else C )
  2. Sau đó thực hiện A if condition1 else

Ví dụ, chúng ta sử dụng toán tử 3 ngôi trong python với lệnh if elif else để kiểm tra một số là âm hay dương như sau:

a = -1
result = 'âm' if a < 0 else 'dương' if a > 0 else 'số 0'
print(result)


a = 0
result = 'âm' if a < 0 else 'dương' if a > 0 else 'số 0'
print(result)


a = 1
result = 'âm' if a < 0 else 'dương' if a > 0 else 'số 0'
print(result)

Kết hợp toán tử 3 ngôi trong python với list comprehension

Đây là cách mà các lập trình viên chuyên nghiệp thường dùng để viết code trong chương trình AI, đó là kết hợp toán tử 3 ngôi trong python với list comprehension.
Bằng cách kết hợp toán tử 3 ngôi với list comprehension, chúng ta có thể tự do thay đổi giá trị các phần tử trong list, hoặc là lựa chọn xử lý tùy thuộc vào điều kiện mà chúng ta đặt ra.
Ví dụ:

l = ['even' if i % 2 == 0 else i for i in range(10)]
print(l)


l = [i * 10 if i % 2 == 0 else i for i in range(10)]
print(l)

  • Bạn có thể tìm hiểu chi tiết về list comprehension tại bài viết Sử dụng list comprehension trong Python.

Tổng kết và thực hành

Trên đây Kiyoshi đã hướng dẫn bạn về cách sử dụng toán tử 3 ngôi trong python rồi. Để nắm rõ nội dung bài học hơn, bạn hãy thực hành viết lại các ví dụ của ngày hôm nay nhé.

Và hãy cùng tìm hiểu những kiến thức sâu hơn về python trong các bài học tiếp theo.

Viết bởi Kiyoshi. Đã đăng ký bản quyền tác giả tại <a title="Bạn được tự do chia sẻ bài viết nhưng phải để lại đường link bài viết từ laptrinhcanban.com. Bạn không được sử dụng tài liệu cho mục đích thương mại. Không được phép chỉnh sửa nội dung được phát hành trên website của chúng tôi" style="color:#fff;background-color:silver" rel="license noopener" target="_blank" href="https://creativecommons.org/licenses/by-nc-nd/4.0/">Creativecommons</a>&nbsp;và <a title="Bạn được tự do chia sẻ bài viết nhưng phải để lại đường link bài viết từ laptrinhcanban.com. Bạn không được sử dụng tài liệu cho mục đích thương mại. Không được phép chỉnh sửa nội dung được phát hành trên website của chúng tôi" style="color:#fff;background-color:silver" target="_blank" rel="noopener" href="https://www.dmca.com/Protection/Status.aspx?ID=1631afcd-7c4a-467d-8016-402c5073e5cd" class="dmca-badge">DMCA</a><script src="https://images.dmca.com/Badges/DMCABadgeHelper.min.js">

Bài viết liên quan

Hãy chia sẻ và cùng lan tỏa kiến thức lập trình Nhật Bản tại Việt Nam!

HOME>> >>