Python là phần mềm mà bất cứ ai theo học và làm việc về ngành công nghệ thông tin đều biết đến và sử dụng phổ biến nhất. Đối với những người mới bắt đầu để sử dụng Python một cách thành thạo bạn cần nắm rõ về các kiểu dữ liệu có trong Python cũng như cách sử dụng. Hiểu được điều đó, bài viết dưới đây  FPT Aptech sẽ liệt kê những nội dung quan trọng của các kiểu dữ liệu có trong Python. Cùng theo dõi bài viết này bạn nhé!

Sự kiện: FPT Aptech mở lớp học Lập trình Python miễn phí!

Giới thiệu chung về các kiểu dữ liệu trong Python  

Trong Python, việc gán một giá trị cho một biến xác định kiểu dữ liệu của nó. Bạn có thể sử dụng các hàm tạo sau để chỉ định kiểu dữ liệu:

Các hàm khởi tạo trong Python 
Các hàm khởi tạo trong Python

Kiểu dữ liệu là một khái niệm rất quan trọng trong lập trình. Các biến có thể lưu trữ các loại dữ liệu khác nhau và mỗi  loại khác nhau có thể làm những việc khác nhau. Đối với Python, ngôn ngữ lập trình có các kiểu dữ liệu sau được tích hợp sẵn theo mặc định, cụ thể như sau:

  • Text Type: str
  • Numeric Types:  int, float, complex
  • Sequence Types: list, tuple, range
  • Mapping Type: dict
  • Set Types: set, frozenset
  • Boolean Type: bool
  • Binary Types: bytes, bytearray, memoryview

Bằng việc sử dụng hàm type () , bạn có thể lấy bất kỳ kiểu dữ liệu nào của các đối tượng. Ví dụ:

x=5

print(type(x))

Các kiểu dữ liệu số (numeric) trong Python

Python hỗ trợ các kiểu dữ liệu số Integer (số nguyên), Float (số thực) và Complex (số phức). Python định nghĩa các lớp là int, float và complex để lưu trữ và thao tác các kiểu dữ liệu số.

  • Integer (số nguyên): viết tắt là int, là các số nguyên dương hoặc âm (không có phần phân số). Trong Python, số nguyên không có giới hạn độ dài. 

Ví dụ: x = 1

y = 35656222554887711

z = -3255522

  • Float (số thực): biểu diễn bởi lớp float. Lớp này đại diện cho các số thực sử dụng dấu phẩy động (15 chữ số chính xác sau dấu thập phân). Các số thực có thể được biểu diễn bằng các ký hiệu e hoặc E, ký hiệu khoa học cho a10b. 

Ví dụ: 1,5e2 tương đương với 1,5 x 102.

  • Complex (số phức): biểu diễn bởi lớp phức. Một số phức được viết dưới dạng x + yj. trong đó “x, y” là phần thực và “j” là phần ảo.

Ví dụ: x = 3+5j

           y = 5j

           z = -5j

Các số mà Python làm việc thường là hệ số của 10 tuy nhiên các lập trình viên máy tính họ thường là các lập trình viên nhúng phải làm việc với các hệ thống số nhị phân, thập lục phân và bát phân. Để biểu diễn các hệ số này trong Python, các lập trình viên cần đặt thêm tiền tố vào trước số đó một cách thích hợp. Cụ thể tiền tố hệ số cho các số Python như sau:

  • Hệ nhị phân: ‘0b’ hoặc ‘0B’
  • Hệ bát phân: ‘0o’ hoặc ‘0O’
  • Hệ thập lục phân: ‘0x’ hoặc ‘0X’

Kiểu dữ liệu chuỗi ký tự (string) trong Python

String trong ngôn ngữ lập trình Python là một dãy các ký tự, máy tính không xử lý ký tự mà chỉ xử lý số nhị phân. Mặc dù có thể nhìn thấy các ký tự trên màn hình nhưng chúng được lưu trữ và xử lý bên trong dưới dạng kết hợp của 0 và 1. Việc chuyển đổi ký tự thành con số được gọi là mã hóa và ngược lại được gọi là giải mã. Trong Python string là một dãy các ký tự unicode và bao gồm mọi ký tự trong tất cả các ngôn ngữ lập trình và mang lại tính đồng nhất trong mã hóa

Các kiểu dữ liệu chuỗi trong Python được đặt trong dấu ngoặc kép đơn hoặc ngoặc kép. Python sẽ coi các lệnh trích dẫn đơn và kép như nhau, ví dụ như “Hello” tương đương với ‘Hello’

Gán chuỗi cho một biến 

Gán chuỗi cho một biến được thực hiện với tên biến sau đó là dấu bằng và chuỗi.

Ví dụ cho gán một chuỗi cho một biến
Ví dụ cho gán một chuỗi cho một biến

Multiline Strings (chuỗi đa dòng)

Bạn có thể gán một chuỗi nhiều dòng cho một biến bằng cách sử dụng ba dấu ngoặc kép hoặc ba dấu nháy đơn 

Nhập chuỗi đa dòng với ba dấu ngoặc kép
Nhập chuỗi đa dòng với ba dấu ngoặc kép
Nhập chuỗi đa dòng với 3 dấu nháy đơn
Nhập chuỗi đa dòng với 3 dấu nháy đơn

Chuỗi là một mảng

Các chuỗi trong Python, giống như trong nhiều ngôn ngữ lập trình phổ biến khác, là các mảng byte đại diện cho các ký tự Unicode. Thế nhưng, Python không có kiểu dữ liệu ký tự, một ký tự chỉ đơn giản là một chuỗi có độ dài 1. Các phần tử của chuỗi có thể được truy cập bằng dấu ngoặc vuông và ký tự đầu tiên có chỉ số là 0

Ví dụ cho chuỗi là một mảng
Ví dụ cho chuỗi là một mảng

Truy cập các giá trị trong String 

Để truy cập phần tử của chuỗi người dùng có thể sử dụng dấu ngoặc vuông [ ] và ký tự đầu mang chỉ số là 0

Thao tác truy cập các giá trị trong String
Thao tác truy cập các giá trị trong String

Ngoài ra, để chỉ định giá trị ban đầu và giá trị kết thúc người dùng cần phân tách bằng dấu hai chấm để có thể trả về một phần của chuỗi

Cách thực hiện chỉ định chỉ mục bắt đầu và chỉ mục kết thúc của một chuỗi
Cách thực hiện chỉ định chỉ mục bắt đầu và chỉ mục kết thúc của một chuỗi

Python List

Python cung cấp các bộ dữ liệu phức hợp (còn được gọi là chuỗi) được sử dụng để nhóm các giá trị khác nhau nhưng đa dạng nhất vẫn là danh sách. Những phương thức có sẵn cho list trong Python gồm:

  • append(): Thêm phần tử vào cuối list.
  • extend(): Thêm tất cả phần tử của list hiện tại vào list khác.
  • insert(): Chèn một phần tử vào index cho trước.
  • remove(): Xóa phần tử khỏi list.
  • pop(): Xóa phần tử khỏi list và trả về phần tử tại index đã cho.
  • clear(): Xóa tất cả phần tử của list.
  • index(): Trả về index của phần tử phù hợp đầu tiên.
  • count(): Trả về số lượng phần tử đã đếm được trong list như một đối số.
  • sort(): Sắp xếp các phần tử trong list theo thứ tự tăng dần.
  • reverse(): Đảo ngược thứ tự các phần tử trong list.
  • copy(): Trả về bản sao của list.

Cách tạo List trong Python 

Danh sách (List) là một bộ sưu tập có thứ tự, được biểu diễn bằng các dãy giá trị và có thể phân tách bằng dấu phẩy hoặc nằm trong dấu ngoặc vuông [ ]. Những danh sách này có thể chứa nhiều mục nhỏ với các kiểu khác nhau tuy nhiên thường là các mục có cùng một kiểu. Danh sách hay List không giới hạn số lượng mục vì vậy bạn có thể sử dụng nhiều kiểu dữ liệu khác nhau trong cùng một list như chuỗi, số thập phân hay số nguyên, số âm,…

List không giới hạn số lượng mục
List không giới hạn số lượng mục

Ngoài cách liệt kê, người dùng cũng có thể tạo các list lồng nhau tức là danh sách chứa trong danh sách hoặc khai báo list lồng nhau ngay từ ban đầu

Danh sách chứa trong danh sách
Danh sách chứa trong danh sách
Khai báo list lồng nhau
Khai báo list lồng nhau

Truy cập vào phần tử của List

Để truy cập các phần tử của danh sách, người có thể sử dụng thuật toán index[ ]. Index bắt đầu từ 0, vì vậy một danh sách gồm năm phần tử thì  sẽ có chỉ số từ 0 đến 4. Nếu người dùng truy cập một phần tử có index khác với index của  danh sách thì sẽ gây ra lỗi IndexError. Các index phải là số nguyên và không thể là float hay các kiểu dữ liệu nào khác.  Nếu không, các loại dữ liệu khác sẽ tạo ra lỗi TypeError.

Index của List
Index của List

Index âm 

Python cho phép lập chỉ mục âm cho các chuỗi. để dễ hiểu thì index âm được sử dụng khi đếm ngược các phần tử của một chuỗi ngược từ cuối lên đầu 

Index âm 
Index âm

Thay đổi hoặc thêm các phần tử vào List

Khác với chuỗi, các dữ liệu bị gán cố định thì với List người dùng có thể nối, thay đổi hay thêm các phần tử khác vào. Để thêm mục mới vào cuối list bạn có thể sử dụng các phương thức chẳng hạn như append():

Thêm mục mới vào cuối list
Thêm mục mới vào cuối list

Xóa hoặc loại bỏ các phần tử khỏi List trong Python 

Để loại bỏ những phần tử đã cho bạn có thể sử dụng lệnh remove() hoặc muốn loại bỏ một phần tử tại một index nhất định thì có thể sử dụng hàm pop(), hàm này giúp loại bỏ phần tử và trả về phần tử cuối cùng nếu index không được chỉ định. Thêm vào đó với phương thức clear() bạn cũng có thể dùng để xóa toàn bộ các phần tử có trong list 

Xóa hoặc loại bỏ phần tử khỏi List trong Python 
Xóa hoặc loại bỏ phần tử khỏi List trong Python

Python Tuples

Tuple trong Python là một kiểu dữ liệu được sử dụng để lưu trữ các đối tượng (chẳng hạn như hằng số) sẽ không bị sửa đổi sau này. Phần lưu trữ còn lại rất giống với kiểu dữ liệu danh sách (list) đã nói ở phía trên. Để khai báo enum người dùng cần khai báo như sau (val1, val2, … , valn) mà trong đó val1, val2, …, valn là những giá trị của tuple. 

Khai báo 1 tuple chứa các ngày trong tuần
Khai báo 1 tuple chứa các ngày trong tuần

Nếu bạn khai báo 1 biến chứa các giá trị mà có dấu () thì Python sẽ nhận định nó là một tuple tuy nhiên mọi người lên sử dụng cách đầu tiên cho code được tường minh). Ngoài ra, nếu bạn muốn khai báo 1 tuple trống thì cần khai báo như sau:

Ngược lại, nếu tuple chỉ chứa duy nhất một giá trị thì bạn buộc phải thêm một dấu phẩy nữa đằng sau giá trị đó. Cụ thể như sau:

Truy cập đến các phần tử trong Tuple 

Tương tự với cách truy cập các phần tử có trong chuỗi và list thì trong Tuple bạn cũng cần thực hiện giống như vậy, cụ thể:

  • Các phần tử trong Tuple được đánh dấu từ 0 theo chiều từ trái qua phải.
  • Và ngược lại từ -1 theo chiều từ phải qua trái.
Thao tác thực hiện để truy cập đến các phần tử trong Tuple
Thao tác thực hiện để truy cập đến các phần tử trong Tuple

Ngoài ra, nếu bạn muốn lấy ra một tuple con trong tuple hiện tại thì bạn sử dụng cú pháp sau tương tự với list và string, chi tiết như sau:

Câu lệnh để lấy một Tuple con trong Tuple hiện tại
Câu lệnh để lấy một Tuple con trong Tuple hiện tại
Ví dụ cụ thể để lấy một tuple day con trong tuple day hiện tại
Ví dụ cụ thể để lấy một tuple day con trong tuple day hiện tại

Xóa Tuple

Một Tuple đã được khai báo giá trị thì không thể sửa đổi hay xóa các giá trị có trong có trong tuple mà bắt buộc phải xóa toàn bộ tuple. Để xóa một hoặc nhiều Tuple người dùng cần sử dụng hàm del.

Ví dụ về cách xóa Tuple
Ví dụ về cách xóa Tuple

Thêm mới phần tử 

Cũng giống như xóa, thì việc thêm mới phần tử là điều mà người dùng không thể thực hiện được khi tuple đã được khai báo. Tuy nhiên, người dùng có thể tạo thêm được một tuple mới thông qua các tuple đã có bằng biểu thức cộng hai tuple với nhau.

Thao tác việc ghép Tuple day1 và day2 với nhau để thành Tuple day
Thao tác việc ghép Tuple day1 và day2 với nhau để thành Tuple day

Bài viết trên đây là toàn bộ những thông tin liên quan tới các kiểu dữ liệu có trong Python mà FPT Aptech muốn chia sẻ tới cho bạn. Mong rằng qua những thông tin này sẽ giúp bạn hiểu và sử dụng thành thạo ngôn ngữ lập trình Python cũng như tích lũy thêm những kiến thức hữu ích để phát triển hơn trong ngành lập trình. Nếu bạn có bất cứ thắc mắc hay băn khoăn liên quan đến bài viết vui lòng liên hệ ngay với chúng tôi thông qua địa chỉ website hoặc số hotline để nhận được sự hỗ trợ sớm nhất.

FPT Aptech trực thuộc Tổ chức Giáo dục FPT có hơn 25 năm kinh nghiệm đào tạo lập trình viên quốc tế tại Việt Nam, và luôn là sự lựa chọn ưu tiên của các sinh viên và nhà tuyển dụng.
0981578920
icons8-exercise-96