Latest Post

Tăng thứ hạng và truy cập tự nhiên với 10 phương pháp SEO hay nhất Kiếm Tiền Online (mmo): Khái Niệm và Các Hình Thức Phổ Biến

Trong Python, bạn có thể kết hợp vòng lặp For và câu điều kiện If thành một dòng duy nhất như sau.

Mệnh đề điều kiện IF

VD 1: Gom if lên 1 dòng

# Multi rows
if True:
    print('Yes')

# One row
if True: print('Yes')

# Or 
True and print('Yes')

VD 2: Gom if else lên 1 dòng

# Multi rows
if True:
    print('Yes')
else:
    print('No')

# One row
print('Yes') if True else print('No')

Vòng lặp For

# Multi rows
for i in range(5):
    print('i=%d' % i)

# One row
for i in range(5): print('i=%d' % i)

Kết hợp giữa for và IF

VD 1: Kết hợp giữa forif lên 1 dòng

# Multi rows
fruits = ['apple', 'banana', 'orange']

for fruit in fruits:
    if fruit == 'apple':
        print('I eat it in the morning')

# One row
[print('I eat it in the morning') for fruit in fruits if fruit == 'apple']

VD 2: Gọi 1 function với for, if

def calculate(a, b):
    print(a + b)


# Multi rows
for i in [1, 2]:
    if i == 2:
        calculate(1, 1)

# One row
any(calculate(1, 1) for i in [1, 2] if i == 2)
# Or
(calculate(1, 1) for i in [1, 2] if i == 2)

VD 3: Gọi function với for, if else

def calculate(a, b):
    print(a + b)


for i in [1, 2, 3]:
    if i == 2:
        calculate(1, 1)
    else:
        calculate(1, 2)

any(calculate(1, 1) if i == 2 else calculate(1, 2) for i in [1, 2, 3])

VD 4: Gọi nhiều lần function với for, if

def calculate(a, b):
    print(a + b)


# Multi rows
for i in [1, 2, 3]:
    if i == 2:
        calculate(1, 1)
        calculate(1, 2)

# One row
any(calculate(1, 1) or calculate(1, 2) for i in [1, 2, 3] if i == 2)

Việc tổng hợp nhiều dòng mã thành một dòng mã trong Python có thể giúp giảm độ dài của mã nguồn, làm cho chương trình trở nên ngắn gọn hơn. Tuy nhiên, cần lưu ý rằng việc viết mã theo cách này có thể khiến người đọc mã gặp khó khăn, do cú pháp viết mã thường khác với việc viết theo kiểu thông thường.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *