Bài tập thực hành về biến trong Python
Python Tutorial | by
Trong Python, biến chắc chắn là một trong những khái niệm đầu tiên và quan trọng nhất mà bạn cần nắm vững. Đơn giản mà nói, biến giống như những "chiếc hộp" nhỏ giúp chúng ta lưu trữ và quản lý thông tin trong chương trình.Bạn có thể hình dung: mỗi khi bạn cần ghi nhớ một con số, một cái tên, hay bất kỳ dữ liệu nào, bạn sẽ "đặt" chúng vào một chiếc hộp có tên gọi cụ thể – đó chính là cách biến hoạt động. Việc sử dụng biến không chỉ giúp chương trình của bạn gọn gàng, dễ đọc hơn mà còn là nền tảng để xử lý mọi loại dữ liệu phức tạp.
Trong bài tập thực hành này, chúng ta sẽ cùng nhau tìm hiểu sâu hơn về biến: từ cách khai báo, các quy tắc đặt tên, cho đến việc làm quen với các kiểu dữ liệu cơ bản mà biến có thể lưu trữ. Hãy cùng bắt đầu và thực hành để biến kiến thức thành kỹ năng nhé!
Tại sao cần dùng biến?
Biến là một khái niệm cốt lõi trong lập trình, và việc hiểu rõ lý do cần sử dụng chúng sẽ giúp bạn viết code hiệu quả và dễ quản lý hơn rất nhiều. Hãy cùng tìm hiểu các lợi ích chính:
Lưu trữ dữ liệu: Để nhớ các giá trị mà chương trình cần dùng
Hãy tưởng tượng bạn đang viết một chương trình cần ghi nhớ tên người dùng, tuổi của họ, hoặc điểm số của một trò chơi. Nếu không có biến, bạn sẽ không có cách nào để "cất giữ" những thông tin này để dùng về sau. Biến chính là nơi lưu trữ tạm thời các giá trị này trong bộ nhớ máy tính.
Ví dụ:
# Chương trình cần nhớ tên người dùng và lời chào ten_nguoi_dung = "Minh Anh" # Biến 'ten_nguoi_dung' đang lưu trữ chuỗi "Minh Anh" loi_chao = "Chào mừng bạn!" # Biến 'loi_chao' đang lưu trữ chuỗi "Chào mừng bạn!" print(loi_chao, ten_nguoi_dung) # Dùng lại các giá trị đã lưu # Kết quả: Chào mừng bạn! Minh Anh
Ở đây, ten_nguoi_dung
và loi_chao
là các biến giúp chúng ta lưu trữ thông tin cần thiết để in ra màn hình.
Tái sử dụng: Dùng lại cùng một giá trị nhiều lần mà không cần viết lại
Khi một giá trị được lưu trong biến, bạn có thể gọi tên biến đó để sử dụng lại giá trị nhiều lần ở nhiều nơi khác nhau trong chương trình mà không cần phải viết lại giá trị đó. Điều này giúp code ngắn gọn và hiệu quả hơn.
Ví dụ: Bạn cần tính tổng giá trị của 3 món hàng đều có giá là 50000 VNĐ.
# Cách không dùng biến (kém hiệu quả) tong_tien = 50000 + 50000 + 50000 print("Tổng tiền không dùng biến:", tong_tien) # Cách dùng biến (hiệu quả hơn) gia_mot_mon_hang = 50000 # Lưu giá trị 50000 vào biến so_luong = 3 tong_tien_voi_bien = gia_mot_mon_hang * so_luong print("Tổng tiền dùng biến:", tong_tien_voi_bien)
Rõ ràng, việc sử dụng biến gia_mot_mon_hang
giúp chúng ta tái sử dụng giá trị 50000
một cách dễ dàng.
Đổi mới dễ dàng: Khi giá trị thay đổi, chỉ cần sửa ở một chỗ
Đây là một trong những lợi ích lớn nhất của biến, đặc biệt trong các chương trình lớn. Nếu một giá trị cần được thay đổi, bạn chỉ cần sửa đổi nó tại một nơi duy nhất (nơi biến được khai báo hoặc cập nhật), thay vì phải tìm và sửa chữa ở mọi chỗ giá trị đó được sử dụng. Điều này giúp giảm thiểu lỗi và tiết kiệm thời gian.
Ví dụ: Giả sử thuế suất VAT của bạn là 10% và được sử dụng ở nhiều công thức tính toán.
# THUẾ SUẤT VAT ban đầu thue_suat_vat = 0.10 # 10% gia_san_pham_A = 100000 thue_A = gia_san_pham_A * thue_suat_vat print("Thuế sản phẩm A (10%):", thue_A) gia_san_pham_B = 250000 thue_B = gia_san_pham_B * thue_suat_vat print("Thuế sản phẩm B (10%):", thue_B) print("-" * 30) # Dòng ngăn cách # Giả sử thuế suất VAT thay đổi thành 8% thue_suat_vat = 0.08 # Chỉ cần sửa ở ĐÂY! # Các phép tính dưới đây sẽ tự động dùng giá trị thuế suất mới thue_A_moi = gia_san_pham_A * thue_suat_vat print("Thuế sản phẩm A (8%):", thue_A_moi) thue_B_moi = gia_san_pham_B * thue_suat_vat print("Thuế sản phẩm B (8%):", thue_B_moi)
Nếu không có biến thue_suat_vat
, bạn sẽ phải tìm và thay thế 0.10
thành 0.08
ở mọi nơi có phép tính thuế, rất dễ gây sai sót.
Code dễ đọc: Biến giúp code có ý nghĩa hơn, dễ hiểu hơn
Thay vì những con số hoặc chuỗi ký tự "vô tri", biến cho phép bạn đặt tên cho dữ liệu theo một cách có ý nghĩa. Điều này giúp người đọc code (kể cả chính bạn sau này) dễ dàng hiểu được mục đích của một giá trị cụ thể là gì.
Ví dụ:
# Code khó hiểu (không dùng biến hoặc tên biến không rõ ràng) print(3.14 * 5 * 5) # Bạn có biết 3.14, 5 ở đây là gì không? # Code dễ hiểu (dùng biến với tên có ý nghĩa) PI = 3.14159 # Hằng số PI ban_kinh = 5 # Bán kính của hình tròn dien_tich_hinh_tron = PI * ban_kinh * ban_kinh print("Diện tích hình tròn:", dien_tich_hinh_tron)
Với biến PI
và ban_kinh
, bạn ngay lập tức hiểu được phép tính trên đang làm gì, thay vì phải đoán ý nghĩa của các con số.
Cách tạo (khai báo) biến trong Python
Trong Python, việc tạo hay khai báo một biến cực kỳ đơn giản và trực quan. Bạn không cần phải khai báo kiểu dữ liệu cho biến trước khi sử dụng như một số ngôn ngữ lập trình khác; Python sẽ tự động nhận diện kiểu dữ liệu dựa trên giá trị mà bạn gán cho nó.
Cú pháp cơ bản
Cú pháp để tạo một biến trong Python là:
tên_biến = giá_trị
-
tên_biến
: Đây là tên bạn đặt cho "chiếc hộp" dùng để lưu trữ dữ liệu. Tên này phải tuân theo một số quy tắc nhất định (chúng ta sẽ tìm hiểu ở mục sau). -
=
(Toán tử gán): Dấu bằng ở đây không phải là phép so sánh "bằng", mà là toán tử gán. Nó có nghĩa là bạn đang "đặt" giá trị bên phải vào chiếc hộp có tên ở bên trái. -
giá_trị
: Đây là dữ liệu thực tế mà bạn muốn lưu trữ trong biến. Giá trị này có thể là số, văn bản, giá trị đúng/sai, hoặc bất kỳ loại dữ liệu nào khác mà Python hỗ trợ.
Ví dụ thực hành cơ bản
Hãy cùng xem xét các ví dụ cụ thể để hiểu rõ hơn cách khai báo biến với các kiểu dữ liệu khác nhau:
Lưu trữ chuỗi (văn bản)
Để lưu trữ văn bản, bạn cần đặt văn bản đó trong dấu nháy đơn (' '
) hoặc dấu nháy kép (" "
).
# Ví dụ 1: Gán một chuỗi (string) vào biến 'ten' ten = "Alice" print("Tên:", ten) # In ra giá trị của biến 'ten' # Ví dụ 2: Một chuỗi khác thong_diep = "Chào buổi sáng!" print("Thông điệp:", thong_diep)
Trong ví dụ trên, biến ten
đang lưu trữ chuỗi "Alice"
, và biến thong_diep
lưu trữ chuỗi "Chào buổi sáng!"
.
b. Lưu trữ số nguyên
Số nguyên là các số không có phần thập phân (ví dụ: 1, 10, -5, 0).
# Ví dụ 1: Gán một số nguyên (integer) vào biến 'tuoi' tuoi = 30 print("Tuổi:", tuoi) # Ví dụ 2: Một số nguyên khác so_luong_sach = 15 print("Số lượng sách:", so_luong_sach)
Ở đây, tuoi
và so_luong_sach
là các biến lưu trữ giá trị số nguyên.
c. Lưu trữ số thập phân (số thực)
Số thập phân (còn gọi là số thực hoặc float) là các số có phần thập phân (ví dụ: 3.14, 9.99, -0.5).
# Ví dụ 1: Gán một số thực (float) vào biến 'diem_trung_binh' diem_trung_binh = 8.5 print("Điểm trung bình:", diem_trung_binh) # Ví dụ 2: Một số thực khác gia_san_pham = 199.99 print("Giá sản phẩm:", gia_san_pham, "USD")
Biến diem_trung_binh
và gia_san_pham
đang lưu trữ các giá trị số thực.
Lưu trữ giá trị Boolean (Đúng/Sai)
Kiểu dữ liệu Boolean chỉ có hai giá trị: True
(Đúng) hoặc False
(Sai). Chúng thường được dùng trong các phép kiểm tra điều kiện.
# Ví dụ 1: Gán một giá trị Boolean (boolean) vào biến 'dang_hoc' dang_hoc = True print("Đang học:", dang_hoc) # Ví dụ 2: Một giá trị Boolean khác het_hang = False print("Hết hàng:", het_hang)
Biến dang_hoc
có giá trị là True
, trong khi het_hang
có giá trị là False
.
e. Gán lại giá trị cho biến
Một điều quan trọng cần nhớ là bạn có thể thay đổi giá trị của một biến bất cứ lúc nào. Khi bạn gán một giá trị mới cho một biến đã tồn tại, giá trị cũ sẽ bị ghi đè.
ten_thanh_pho = "Hà Nội" # Khai báo ban đầu print("Thành phố hiện tại:", ten_thanh_pho) ten_thanh_pho = "Thành phố Hồ Chí Minh" # Gán lại giá trị mới print("Thành phố mới:", ten_thanh_pho)
Lúc đầu, ten_thanh_pho
là "Hà Nội", sau đó nó được cập nhật thành "Thành phố Hồ Chí Minh".
Việc hiểu và thực hành cách khai báo biến là bước đầu tiên và quan trọng nhất để bạn có thể bắt đầu xây dựng các chương trình Python của riêng mình. Hãy tiếp tục khám phá các quy tắc đặt tên biến để đảm bảo code của bạn luôn rõ ràng và dễ bảo trì nhé!
Các quy tắc đặt tên biến (quan trọng!)
Khi bạn đặt tên cho các "chiếc hộp" dữ liệu của mình, Python có một số quy tắc mà bạn cần tuân thủ. Nếu không, chương trình của bạn sẽ báo lỗi! Ngoài ra, cũng có những "lời khuyên" giúp code của bạn trở nên chuyên nghiệp và dễ đọc hơn.
Chỉ chứa: Chữ cái (a-z, A-Z), số (0-9) và dấu gạch dưới (_
)
Tên biến trong Python chỉ được phép bao gồm các ký tự chữ cái (từ a đến z, cả chữ hoa và chữ thường), các chữ số (từ 0 đến 9) và dấu gạch dưới (_
). Bạn không thể sử dụng các ký tự đặc biệt khác như dấu cách, dấu gạch ngang (-
), @
, #
, $
v.v.
Ví dụ:
# Tên biến HỢP LỆ ten_sinh_vien = "Nguyễn Văn A" diem_toan_10 = 9.5 ma_san_pham_xyz = "P12345" # Tên biến KHÔNG HỢP LỆ (sẽ gây lỗi SyntaxError) # ten sinh vien = "Nguyễn Văn B" # Chứa dấu cách # diem-ly = 8.0 # Chứa dấu gạch ngang # @email = "[email protected]" # Chứa ký tự '@'
Không bắt đầu bằng số
Tên biến không được phép bắt đầu bằng một chữ số. Nó phải bắt đầu bằng một chữ cái hoặc dấu gạch dưới (_
).
Ví dụ:
# Tên biến HỢP LỆ hoc_sinh_lop_1 = "Lan" _temp_value = 100 # Tên biến KHÔNG HỢP LỆ (sẽ gây lỗi SyntaxError) # 1st_place = "Gold" # Bắt đầu bằng số # 2_nd_attempt = 5 # Bắt đầu bằng số
Phân biệt chữ hoa/thường (Case-sensitive)
Python là một ngôn ngữ phân biệt chữ hoa/thường (case-sensitive). Điều này có nghĩa là ten
, Ten
, và TEN
được xem là ba biến hoàn toàn khác nhau.
Ví dụ:
ten = "An" Ten = "Bình" TEN = "Cường" print("Biến 'ten':", ten) print("Biến 'Ten':", Ten) print("Biến 'TEN':", TEN) # Kết quả: # Biến 'ten': An # Biến 'Ten': Bình # Biến 'TEN': Cường
Hãy cẩn thận khi sử dụng chữ hoa và chữ thường để tránh nhầm lẫn giữa các biến.
Không dùng từ khóa Python
Python có một tập hợp các từ khóa (keywords) đã được dành riêng cho các chức năng đặc biệt của ngôn ngữ (ví dụ: if
, for
, while
, class
, def
, print
, True
, False
, None
...). Bạn không thể sử dụng những từ này làm tên biến, nếu không sẽ gây ra lỗi SyntaxError
.
Để biết danh sách đầy đủ các từ khóa, bạn có thể chạy đoạn code sau:
import keyword print(keyword.kwlist)
Ví dụ:
# Tên biến HỢP LỆ so_luong = 5 tong_diem = 100 # Tên biến KHÔNG HỢP LỆ (sẽ gây lỗi SyntaxError) # if = 10 # 'if' là từ khóa # for = "loop" # 'for' là từ khóa # class_name = "MyClass" # 'class' là từ khóa
Nên đặt tên có ý nghĩa (Best Practice)
Đây không phải là một quy tắc bắt buộc của Python, nhưng là một thực hành tốt rất quan trọng trong lập trình. Việc đặt tên biến có ý nghĩa, mô tả rõ ràng mục đích của dữ liệu mà nó lưu trữ, sẽ giúp code của bạn dễ hiểu hơn rất nhiều cho cả bạn và những người khác đọc code.
Ví dụ:
# Tên biến KHÔNG CÓ Ý NGHĨA (khó hiểu) x = 1000000 y = 0.05 z = x * y print(z) # z là gì? x, y là gì? # Tên biến CÓ Ý NGHĨA (dễ hiểu) doanh_thu_ban_hang = 1000000 ty_le_hoa_hong = 0.05 hoa_hong_thu_duoc = doanh_thu_ban_hang * ty_le_hoa_hong print("Hoa hồng thu được:", hoa_hong_thu_duoc)
Rõ ràng, việc sử dụng doanh_thu_ban_hang
, ty_le_hoa_hong
, và hoa_hong_thu_duoc
giúp chúng ta ngay lập tức hiểu được mục đích của các biến và phép tính.
Quy ước đặt tên phổ biến (Conventions):
Mặc dù bạn có thể đặt tên biến theo nhiều cách, có một số quy ước phổ biến trong cộng đồng Python:
-
snake_case: Các từ được viết thường và cách nhau bằng dấu gạch dưới (ví dụ:
ten_nguoi_dung
,so_luong_san_pham
). Đây là quy ước được khuyên dùng cho tên biến và tên hàm trong Python. -
CamelCase: Từ đầu tiên viết thường, các từ tiếp theo viết hoa chữ cái đầu (ví dụ:
userName
,productQuantity
). Ít phổ biến hơn cho biến thông thường, thường dùng cho tên lớp (class). -
CONSTANT_CASE: Toàn bộ chữ cái viết hoa và cách nhau bằng dấu gạch dưới (ví dụ:
MAX_SIZE
,PI
). Thường dùng cho các hằng số, tức là các giá trị không đổi trong suốt chương trình.
Bằng cách tuân thủ các quy tắc và áp dụng các thực hành tốt này, bạn sẽ xây dựng được những đoạn mã Python không chỉ chạy đúng mà còn dễ đọc, dễ bảo trì và dễ mở rộng.
Các kiểu dữ liệu cơ bản của biến
Một trong những điều tuyệt vời của Python là tính linh hoạt trong việc xử lý kiểu dữ liệu. Khác với một số ngôn ngữ khác yêu cầu bạn phải khai báo rõ ràng kiểu dữ liệu khi tạo biến (ví dụ: int number;
), Python có khả năng tự động nhận diện kiểu dữ liệu dựa trên giá trị mà bạn gán cho biến. Tuy nhiên, việc hiểu rõ các kiểu dữ liệu cơ bản sẽ giúp bạn biết cách chúng hoạt hoạt động, từ đó xử lý dữ liệu hiệu quả và tránh được những lỗi không đáng có.
Hãy cùng tìm hiểu các kiểu dữ liệu phổ biến nhất:
Số nguyên (int)
Kiểu dữ liệu int
(integer) dùng để lưu trữ các số nguyên, tức là các số không có phần thập phân. Các số này có thể là số dương, số âm hoặc số 0.
Đặc điểm:
-
Không có dấu phẩy động.
-
Có thể biểu diễn các số rất lớn (Python tự động quản lý kích thước).
Ví dụ:
# Biến 'so_hoc_sinh' lưu số nguyên dương so_hoc_sinh = 25 print("Số học sinh:", so_hoc_sinh) print("Kiểu dữ liệu của so_hoc_sinh:", type(so_hoc_sinh)) # Dùng hàm type() để kiểm tra kiểu dữ liệu # Biến 'nhiet_do_am' lưu số nguyên âm nhiet_do_am = -10 print("Nhiệt độ âm:", nhiet_do_am) # Biến 'diem_0' lưu số 0 diem_0 = 0 print("Điểm 0:", diem_0)
Số thực (float)
Kiểu dữ liệu float
(floating-point number) dùng để lưu trữ các số thực, tức là các số có phần thập phân.
Đặc điểm:
-
Chứa dấu chấm thập phân (ví dụ:
3.14
,99.99
). -
Thường được dùng để biểu diễn các giá trị tiền tệ, đo lường, hay bất kỳ số nào có độ chính xác sau dấu phẩy.
Ví dụ:
# Biến 'gia_tien' lưu số thực gia_tien = 99.99 print("Giá tiền:", gia_tien) print("Kiểu dữ liệu của gia_tien:", type(gia_tien)) # Biến 'pi_value' lưu giá trị của số Pi pi_value = 3.14159 print("Giá trị Pi:", pi_value) # Biến 'phan_tram_giam_gia' lưu số âm có thập phân phan_tram_giam_gia = -0.25 print("Phần trăm giảm giá:", phan_tram_giam_gia)
Chuỗi (str)
Kiểu dữ liệu str
(string) dùng để lưu trữ các đoạn văn bản, ký tự hoặc chuỗi ký tự. Bạn cần đặt các chuỗi này trong dấu nháy đơn (' '
) hoặc dấu nháy kép (" "
).
Đặc điểm:
-
Có thể chứa chữ cái, số, ký tự đặc biệt, dấu cách.
-
Dấu nháy đơn hay nháy kép đều có giá trị như nhau, nhưng cần phải đồng nhất trong một chuỗi.
Ví dụ:
# Biến 'loi_chao' lưu một chuỗi ký tự loi_chao = "Chào mừng đến với Python!" print("Lời chào:", loi_chao) print("Kiểu dữ liệu của loi_chao:", type(loi_chao)) # Biến 'ten_san_pham' lưu một chuỗi sử dụng dấu nháy đơn ten_san_pham = 'Áo thun' print("Tên sản phẩm:", ten_san_pham) # Chuỗi có chứa số và ký tự đặc biệt ma_zip = "10000-VN" print("Mã ZIP:", ma_zip)
Boolean (bool)
Kiểu dữ liệu bool
(boolean) là kiểu dữ liệu đơn giản nhất, chỉ có hai giá trị:
-
True
(Đúng) -
False
(Sai)
Giá trị Boolean thường được sử dụng để kiểm tra các điều kiện, đưa ra quyết định trong chương trình (ví dụ: if
câu lệnh).
Đặc điểm:
-
Chỉ có
True
hoặcFalse
. -
Chữ cái đầu (
T
trong True,F
trong False) phải được viết hoa.
Ví dụ:
# Biến 'da_hoan_thanh' lưu giá trị False da_hoan_thanh = False print("Đã hoàn thành bài tập:", da_hoan_thanh) print("Kiểu dữ liệu của da_hoan_thanh:", type(da_hoan_thanh)) # Biến 'co_du_tien' lưu giá trị True co_du_tien = True print("Có đủ tiền mua hàng:", co_du_tien) # Ví dụ về sử dụng Boolean trong điều kiện if da_hoan_thanh == True: print("Tuyệt vời, bạn đã hoàn thành!") else: print("Hãy cố gắng hoàn thành nhé!")
Hiểu rõ về các kiểu dữ liệu cơ bản này là nền tảng để bạn có thể làm việc hiệu quả với các loại thông tin khác nhau trong Python. Dù Python tự động nhận diện kiểu, nhưng việc bạn nắm vững chúng sẽ giúp bạn viết code chính xác, tránh lỗi và tối ưu hóa chương trình.
Thực hành với biến
Bài tập 1: Khai báo và in biến
Mục tiêu: Hiểu cách tạo biến và sử dụng chúng để hiển thị thông tin.
Yêu cầu:
-
Tạo một biến
ten_mon_hoc
và gán giá trị là tên một môn học bạn thích. -
Tạo một biến
so_tin_chi
và gán giá trị là số tín chỉ của môn học đó. -
Tạo một biến
diem_dat_duoc
và gán giá trị là điểm bạn đạt được (có thể có thập phân). -
In ra màn hình thông tin theo định dạng: "Môn [tên môn học] có [số tín chỉ] tín chỉ. Bạn đạt [điểm đạt được] điểm."
Gợi ý: Sử dụng hàm print()
để hiển thị giá trị của biến. Bạn có thể nối các chuỗi và biến bằng dấu phẩy (,
) hoặc sử dụng f-string (cú pháp hiện đại hơn, bắt đầu bằng f
trước dấu nháy).
Lời giải và code mẫu:
# Bước 1: Tạo các biến và gán giá trị ten_mon_hoc = "Lập trình Python cơ bản" # Tên môn học bạn thích so_tin_chi = 3 # Số tín chỉ của môn học diem_dat_duoc = 9.5 # Điểm bạn đạt được (ví dụ) # Bước 2: In ra thông tin theo định dạng yêu cầu # Cách 1: Sử dụng dấu phẩy (,) trong print - Python sẽ tự thêm dấu cách print("Môn", ten_mon_hoc, "có", so_tin_chi, "tín chỉ. Bạn đạt", diem_dat_duoc, "điểm.") # Cách 2: Sử dụng f-string (khuyên dùng vì dễ đọc và linh hoạt hơn) # Đặt chữ 'f' hoặc 'F' trước dấu nháy kép/đơn, và đặt tên biến trong dấu ngoặc nhọn {} print(f"Môn {ten_mon_hoc} có {so_tin_chi} tín chỉ. Bạn đạt {diem_dat_duoc} điểm.")
Giải thích: Chúng ta tạo ba "chiếc hộp" mang tên ten_mon_hoc
, so_tin_chi
, và diem_dat_duoc
để lưu trữ thông tin về môn học. Sau đó, chúng ta dùng hàm print()
để hiển thị nội dung của những chiếc hộp này cùng với các đoạn văn bản khác, tạo thành câu hoàn chỉnh.
Bài tập 2: Thay đổi giá trị biến
Mục tiêu: Hiểu cách cập nhật (gán lại) giá trị cho một biến đã tồn tại.
Yêu cầu:
-
Khai báo biến
so_luong_tao = 10
. -
In ra giá trị của
so_luong_tao
. -
Giả sử bạn ăn mất 2 quả táo. Cập nhật giá trị của
so_luong_tao
xuống còn 8. -
In lại giá trị mới của
so_luong_tao
.
Gợi ý: Gán giá trị mới trực tiếp vào biến bằng toán tử =
.
Lời giải và code mẫu:
# Bước 1: Khai báo biến 'so_luong_tao' với giá trị ban đầu so_luong_tao = 10 # Bước 2: In ra giá trị ban đầu print(f"Số lượng táo ban đầu: {so_luong_tao} quả.") # Bước 3: Cập nhật giá trị của biến (ăn mất 2 quả) # Có thể gán trực tiếp: so_luong_tao = 8 # Hoặc thực hiện phép tính: so_luong_tao = so_luong_tao - 2 # Bước 4: In lại giá trị mới print(f"Số lượng táo sau khi ăn: {so_luong_tao} quả.")
Giải thích: Ban đầu, "chiếc hộp" so_luong_tao
chứa số 10
. Khi chúng ta gán lại so_luong_tao = so_luong_tao - 2
, giá trị 10
bị trừ đi 2
, và kết quả 8
được lưu trở lại vào chính chiếc hộp đó, ghi đè lên giá trị cũ.
Bài tập 3: Biến và phép tính
Mục tiêu: Sử dụng biến trong các phép tính toán học và lưu trữ kết quả vào biến mới.
Yêu cầu:
-
Khai báo biến
chieu_dai = 5
vàchieu_rong = 3
. -
Tạo một biến mới
chu_vi
và tính chu vi hình chữ nhật từchieu_dai
vàchieu_rong
. (Công thức:(chiều dài + chiều rộng) * 2
) -
Tạo một biến mới
dien_tich
và tính diện tích hình chữ nhật. (Công thức:chiều dài * chiều rộng
) -
In ra cả chu vi và diện tích.
Lời giải và code mẫu:
# Bước 1: Khai báo biến chiều dài và chiều rộng chieu_dai = 5 chieu_rong = 3 # Bước 2: Tính toán và lưu chu vi vào biến 'chu_vi' chu_vi = (chieu_dai + chieu_rong) * 2 # Bước 3: Tính toán và lưu diện tích vào biến 'dien_tich' dien_tich = chieu_dai * chieu_rong # Bước 4: In ra kết quả print(f"Hình chữ nhật có chiều dài {chieu_dai} và chiều rộng {chieu_rong}.") print(f"Chu vi của hình chữ nhật là: {chu_vi}.") print(f"Diện tích của hình chữ nhật là: {dien_tich}.")
Giải thích: Chúng ta sử dụng các biến chieu_dai
và chieu_rong
trong các công thức toán học để tính toán chu vi và diện tích. Kết quả của mỗi phép tính được gán vào các biến mới là chu_vi
và dien_tich
, giúp chúng ta dễ dàng truy cập và hiển thị chúng.
Kết bài
Qua các phần lý thuyết và bài tập thực hành vừa rồi, chắc hẳn bạn đã có cái nhìn rõ ràng hơn về biến trong Python – những "chiếc hộp" đa năng để lưu trữ mọi loại dữ liệu. Từ việc hiểu được biến là gì, tại sao chúng lại quan trọng, cho đến cách khai báo và tuân thủ các quy tắc đặt tên, bạn đã trang bị cho mình một nền tảng vững chắc.
Hãy nhớ rằng:
-
Biến là công cụ cơ bản nhất để làm việc với dữ liệu trong Python.
-
Luôn đặt tên biến rõ ràng và tuân thủ các quy tắc để code của bạn dễ đọc và dễ bảo trì.
-
Mặc dù Python tự động xác định kiểu dữ liệu, nhưng hiểu về các kiểu
int
,float
,str
,bool
sẽ giúp bạn viết code chính xác và hiệu quả hơn.
Việc thành thạo cách sử dụng biến là bước khởi đầu quan trọng trên con đường trở thành một lập trình viên Python giỏi. Hãy tiếp tục thực hành, thử nghiệm và đừng ngại mắc lỗi, vì đó là cách tốt nhất để học hỏi!