Khám Phá Cú Pháp Cơ Bản Và Cấu Trúc Điều Khiển Trong Python 3

Giới thiệu về thực thi và mã hóa

Khi Python interpreter đọc và thực thi các tệp nguồn .py, nó sẽ xử lý nội dung dựa trên bộ mã hóa ký tự. Mặc dù các phiên bản cũ thường mặc định là ASCII, chuẩn hiện đại khuyến nghị sử dụng UTF-8 để hỗ trợ đa ngôn ngữ. Câu lệnh cơ bản nhất để hiển thị thông tin ra màn hình là print.

print("Xin chào thế giới")

Biến và nhập xuất dữ liệu

Trong lập trình, việc khai báo biến không cần chỉ định kiểu dữ liệu tường minh. Biến có thể được gán giá trị và tham chiếu lẫn nhau. Dưới đây là ví dụ về việc gán biến và in ra màn hình:

full_name = "Nguyen Van A"
reference_name = full_name

print("Ten nguoi dung:", full_name, reference_name)

Để tương tác với người dùng, chúng ta sử dụng hàm input() để nhận dữ liệu đầu vào. Dữ liệu nhận được luôn ở dạng chuỗi, do đó cần ép kiểu nếu muốn thực hiện các phép toán số học.

user_name = input("Ten dang nhap: ")
user_age = int(input("Tuoi: "))  # Ep kieu sang so nguyen

print(type(user_age))
print(type(str(user_age)))  # Ep kieu ve chuoi

occupation = input("Nghe nghiep: ")

Các phương thức định dạng chuỗi

Python hỗ trợ nhiều cách để chèn biến vào chuỗi ký tự. Dưới đây là ba phương pháp phổ biến.

Phương thức 1: Sử dụng toán tử %

Các ký tự đặc biệt như %s (chuỗi), %d (số nguyên), %f (số thực) được dùng làm chỗ giữ chỗ.

info_template = '''
========== Thong tin %s ==========
Ho ten: %s
Tuoi: %d
Nghe nghiep: %s
'''
output = info_template % (user_name, user_name, user_age, occupation)
print(output)

Phương thức 2: Sử dụng hàm .format() với tên biến

Cách này giúp code dễ đọc hơn bằng cách đặt tên cho các chỗ giữ chỗ.

info_template_v2 = '''
========== Thong tin {_name} ==========
Ho ten: {_name}
Tuoi: {_age}
Nghe nghiep: {_job}
'''
output_v2 = info_template_v2.format(_name=user_name, _age=user_age, _job=occupation)
print(output_v2)

Phương thức 3: Sử dụng hàm .format() với chỉ số

Sử dụng vị trí của biến trong hàm format để điền vào chuỗi.

info_template_v3 = '''
========== Thong tin {0} ==========
Ho ten: {0}
Tuoi: {1}
Nghe nghiep: {2}
'''
output_v3 = info_template_v3.format(user_name, user_age, occupation)
print(output_v3)

Xử lý logic đăng nhập đơn giản

Chúng ta có thể xây dựng một kịch bản xác thực đơn giản bằng cách so sánh dữ liệu đầu vào với giá trị đã định nghĩa trước.

admin_user = 'kevm'
admin_pass = '123456'

input_user = input("Ten dang nhap: ")
input_pass = input("Mat khau: ")

if admin_user == input_user and admin_pass == input_pass:
    print("Chao mung {name} da dang nhap...".format(name=input_user))
else:
    print("Ten dang nhap hoac mat khau khong hop le", input_pass)

Vòng lặp While và điều kiện dừng

Vòng lặp while sẽ tiếp tục thực thi miễn là điều kiện còn đúng. Chúng ta có thể sử dụng break để thoát khỏi vòng lặp vô hạn khi đạt đủ số lần yêu cầu.

counter = 0
while True:
    print("Lan lap:", counter)
    counter += 1
    if counter == 1000:
        break  # Thoat vong lap khi dem den 1000

Trò chơi đoán số với giới hạn lần thử

Kết hợp vòng lặp và điều kiện rẽ nhánh để tạo logic game. Người dùng có 3 cơ hội để đoán đúng một con số bí mật.

target_age = 56
attempt = 0

while attempt < 3:
    guess = int(input("Doan tuoi: "))
    if guess == target_age:
        print("Chuc mung, ban doan dung!")
        break
    elif guess > target_age:
        print("Hay thu so nho hon...")
    else:
        print("Hay thu so lon hon...")
    attempt += 1
else:
    print("Ban da thu qua nhieu lan. Ket thuc.")

Chúng ta cũng có thể sử dụng vòng lặp for kết hợp với range để giới hạn số lần chạy ngay từ đầu.

for i in range(3):
    guess = int(input("Doan tuoi: "))
    if guess == target_age:
        print("Chuc mung, ban doan dung!")
        break
    elif guess > target_age:
        print("Hay thu so nho hon...")
    else:
        print("Hay thu so lon hon...")
else:
    print("Ban da thu qua nhieu lan. Ket thuc.")

Logic chơi lại và điều khiển vòng lặp

Để tăng tính tương tác, chúng ta có thể hỏi người dùng muốn tiếp tục hay không sau khi hết lượt chơi.

target_age = 56
count = 0
while count < 3:
    guess = int(input("Doan tuoi: "))
    if guess == target_age:
        print("Chuc mung, ban doan dung!")
        break
    elif guess > target_age:
        print("Hay thu so nho hon...")
    else:
        print("Hay thu so lon hon...")
    count += 1
    if count == 3:
        confirm = input("Ban co muon tiep tuc khong? (Nhap n de dung): ")
        if confirm != 'n':
            count = 0

Vòng lặp For và bước nhảy

Hàm range cho phép xác định điểm bắt đầu, kết thúc và bước nhảy. Ví dụ dưới đây chỉ in các số chẵn.

for i in range(0, 10, 2):
    print("Vong lap:", i)

Sử dụng Continue và Break

continue dùng để bỏ qua phần còn lại của lần lặp hiện tại và chuyển sang lần tiếp theo. break dùng để thoát hoàn toàn khỏi vòng lặp.

for i in range(10):
    if i < 3:
        print("Vong lap:", i)
    else:
        continue
    print("Hehe!!")

Vòng lặp lồng nhau

Chúng ta có thể đặt một vòng lặp bên trong một vòng lặp khác. Câu lệnh break chỉ ảnh hưởng đến vòng lặp gần nhất.

for i in range(10):
    print('---------------', i)
    for j in range(10):
        print(j)
        if j > 5:
            break  # Thoat vong lap con khi j > 5

Thẻ: python-3 string-formatting control-flow input-output loop-statements

Đăng vào ngày 19 tháng 6 lúc 00:24