Biến số và kiểu dữ liệu số trong Python

Bài viết được sự cho phép của tác giả Kien Dang Chung

Trong lập trình biến và kiểu dữ liệu là những khái niệm cơ bản nhất, từ những khái niệm cơ bản này chúng ta mới tiếp tục những phần nâng cao hơn như tương tác với người dùng, các cú pháp điều khiển luồng ứng dụng, thuật toán… Khóa học này nhắm đến cả những bạn mới bắt đầu làm quen với lập trình do đó nội dung đi khá chi tiết, bạn nào đã có kiến thức sẵn có thể xem các bài tiếp theo.

1. Biến số

1.1 Biến số trong ngôn ngữ lập trình là gì?

Biến số (variable) là một khái niệm cơ bản trong lập trình, biến dùng để lưu trữ thông tin, các tham chiếu và sử dụng để thao tác dữ liệu. Các biến bản chất là một cách để đánh nhãn cho dữ liệu với một tên gợi nhớ, các chương trình có thể hiểu được cần lấy dữ liệu từ đâu với biến đó. Đặt tên biến gợi nhớ cũng giúp cho các lập trình viên khác có thể hiểu được đoạn code bạn chia sẻ. Một hình tượng khác có thể dễ hiểu hơn là các biến giống như những chiếc công tơ nơ chứa bên trong các nội dung là đồ vật, hàng hóa… được đánh số (đặt tên) ví dụ công tơ nơ thực phẩm, công tơ nơ đồ điện giúp cho muốn tìm đến một loại hàng hóa nào đó dễ dàng.

Trong Python, các biến được khai báo với cú pháp như sau:

ten_bien = gia_tri

Trong đó:

  • ten_bien: là một tên gợi nhớ cho dữ liệu cần xử lý, ví dụ tuoi_nguoi_dung, tong_so_tien… Chú ý nên đặt tên gợi nhớ giúp cho người khác hoặc chính bản thân bạn có thể đọc lại code một cách dễ dàng, tránh các tên biến theo kiểu abc, xyz, heeeeee, hiiiii…
  • gia_tri: là giá trị khởi tạo cho biến, giá trị này sẽ được lưu vào bộ nhớ máy tính và khi chương trình cần dùng đến dữ liệu này sẽ gọi đến tên biến. Giá trị có thể là số, chuỗi ký tự hoặc thậm chí là một hàm tính toán khác.

Quay lại ví dụ Hello world trong bài trước, chúng ta in ra màn hình một lời chào bằng câu lệnh print(). Tiếp theo, chúng ta sẽ sử dụng một biến lưu trữ câu chào và thực hiện in ra màn hình câu chào thông qua biến này.

loi_chao = "Hello, world!"
print(loi_chao)

Kết quả là giống nhau, vậy tại sao cần sử dụng biến trong Python? Mình sẽ ví dụ cho các bạn thấy tại sao cần biến số, ví dụ người dùng nhập vào tên và chúng ta in ra lời chào. Như vậy tên người dùng nhập vào cần được lưu trữ trong một biến ten_nguoi_dung vì chúng ta không thể biết trước tên người dùng là gì?

Như vậy, biến số ngoài việc lưu giá trị còn để “xào nấu” dữ liệu. Giá trị trong biến có thể thay đổi. Ví dụ tiếp theo:

age = 30
print(age)

age = 40
print(age)

Kết quả chúng ta có số 30 in ra trước và đến dòng thứ 2 in ra số 40.

1.2 Cách đặt tên biến

Mỗi ngôn ngữ lập trình có quy ước bắt buộc hoặc một thói quen cộng đồng về việc quy chuẩn đặt tên khác nhau. Ví dụ có các kiểu đặt tên như:

  • underscore hay snake_case: sử dụng các dấu gạch dưới phân cách các từ trong tên biến. Ví dụ: ten_nguoi-dung, TI_LE_CHIET_KHAU
  • camelCase: viết hoa các chữ cái đầu tiên của từng từ trừ chữ cái từ đầu tiên. Ví dụ: tenNguoiDung
  • PascalCase: viết hoa tất cả các chữ cái đầu tiên của từng từ. Ví dụ: TenNguoiDung.

Trong Python, các kiểu đặt tên trên đều sử dụng được, tuy nhiên theo quy ước viết code chung của cộng đồng thì sử dụng kiểu gạch chân. Tên các biến sẽ được viết thường và tên hằng số được viết hoa.

# Tên biến trong Python
ten_nguoi_dung = "Nguyen Van A"
tuoi_nguoi_dung = 35

# Tên hằng số trong Python
SO_PI = 3.14159
KHACH_HANG_LA_THUONG_DE = true

Một số chú ý khi đặt tên biến trong Python:

  • Tên biến có thể chứa chữ số nhưng không được phép bắt đầu bằng chữ số.
  • Tên biến không được chứa các ký tự đặc biệt ngoài dấu gạch chân _.
  Những cải tiến đáng giá của Python 3.12
  Biến và kiểu dữ liệu cơ bản trong Python

2. Kiểu dữ liệu số trong Python

Kiểu dữ liệu số trong Python bao gồm hai loại là kiểu nguyên và kiểu thập phân. Trong một số các ngôn ngữ lập trình khác, kiểu nguyên hoặc kiểu thập phân còn được chi tiết hơn với khoảng rộng của dải số có thể (độ dài ô chứa số đó, ví dụ int và longint khác nhau). Python chỉ phân biệt số có và không có dấu chấm thập phân.

# Kiểu số nguyên - integer
tuoi_nguoi-dung = 35

# Kiểu số thập phân - float
ti_le_binh_chon = 8.2

3. Thực hiện phép toán trong Python

Trong Python chúng ta có thể thực hiện các phép toán đơn giản như +, -, *, / với quy tắc tính giống như ngoài thực tế là ưu tiên trong ngoặc trước, ngoài ngoặc sau, trong phép toán trước, ngoài phép toán sau (phép toán như khai căn, số mũ, logarit…), nhân chia trước, cộng trừ sau. Đây là các thứ tự thực hiện phép toán theo luật Pemdas, Bodmas.

Ví dụ thực hiện một phép tính trong Python:

maths_operation = 1 + 3 * 4 / 2 -2
print(maths_operation)

Kết quả nhận được là 5.0. Chú ý, kết quả của phép chia trong Python luôn trả về là một số thập phân dù phần thập phân có thể bằng 0.

4. Phép chia lấy phần nguyên và lấy phần dư trong Python

Trong ví dụ trên, nếu chúng ta muốn trả về là một số nguyên, trong Python chúng ta sẽ sử dụng toán tử // thay cho /. Toán tử này trả về phần nguyên của phép chia.

Ví dụ:

# Phép chia lấy phần nguyên
integer_division = 8 // 3
print(integer_division)

# Kết quả là 2 

Ngoài ra, Python cũng có toán tử % để lấy phần dư trong phép chia. Chúng ta có thể tính toán nếu biết phần nguyên nhưng sử dụng toán tử có sẵn sẽ thuận tiện hơn:

# Phép chia lấy phần dư
division_with_remainder = 13 // 5
print(division_with_remainder)

# Kết quả là 3 vì 13 chia 5 dư 3

Toán tử lấy phần dư phép chia có ứng dụng xác định một số là số chẵn hay số lẻ bằng cách kiểm tra phần dư trong phép chia cho 2 có kết quả là 0 hay 1. Vì số chẵn chia hết cho 2, số lẻ chia cho 2 dư 1. Kết quả này thường ứng dụng vào việc tô màu cho các dòng trong một bảng dữ liệu, giúp cho bảng dữ liệu dễ đọc hơn.

Bảng dữ liệu có phối màu nhờ xác định dòng chẵn lẻ

Như vậy chúng ta đã được giới thiệu về biến số là gì, cách đặt tên biến trong Python và kiểu dữ liệu đầu tiên là kiểu số (integer, float). Những kiến thức ban đầu rất cơ bản, bạn nào chưa bao giờ học lập trình nên đọc và thực hành kỹ bởi đây là nền tảng không chỉ học Python mà bất kỳ ngôn ngữ lập trình nào bạn sẽ tìm hiểu sau này.

5. Các phép toán phức tạp trong Python

Mặc định, Python hỗ trợ các phép toán thông thường để chúng ta tính toán, khi cần dùng đến các phép toán phức tạp hơn, chúng ta có thể sử dụng thư viện math. Để sử dụng thư viện này trong phần đầu của code chúng ta sử dụng lệnh import math để hệ thống tải thư viện này và chúng ta có thể sử dụng các hàm mà math cung cấp.

Ví dụ, có diện tích hình vuông ta muốn xác định cạnh của nó bằng hàm khai căn bậc 2 như sau:

import math

area_square = 64
square_edge = math.sqrt(area_square)
print(square_edge) # Kết quả là 8

Thư viện math còn có một số các hàm toán học hay sử dụng như sin, cos, log, pow (lũy thừa)…

Bài viết gốc được đăng tải tại allaravel.com

Có thể bạn quan tâm:

Xem thêm tìm việc lập trình viên hấp dẫn trên TopDev