Thứ tư, 14/09/2016 | 00:00 GMT+7

Hiểu các kiểu dữ liệu trong Python 3

Trong Python, giống như trong tất cả các ngôn ngữ lập trình, các kiểu dữ liệu được sử dụng để phân loại một loại dữ liệu cụ thể. Điều này rất quan trọng vì kiểu dữ liệu cụ thể mà bạn sử dụng sẽ xác định những giá trị nào bạn có thể gán cho nó và những gì bạn có thể làm với nó (bao gồm cả những thao tác bạn có thể thực hiện trên nó).

Trong hướng dẫn này, ta sẽ xem xét các kiểu dữ liệu quan trọng có nguồn root từ Python. Đây không phải là một cuộc điều tra toàn diện về các kiểu dữ liệu, nhưng sẽ giúp bạn làm quen với những tùy chọn có sẵn cho bạn trong Python.

Lý lịch

Một cách để suy nghĩ về các kiểu dữ liệu là xem xét các kiểu dữ liệu khác nhau mà ta sử dụng trong thế giới thực. Ví dụ về dữ liệu trong thế giới thực là số: ta có thể sử dụng số nguyên (0, 1, 2,…), số nguyên (…, -1, 0, 1,…), và số vô tỉ (π) chẳng hạn.

Thông thường, trong toán học, ta có thể kết hợp các số từ các loại khác nhau và nhận được một số loại câu trả lời. Ta có thể cần thêm 5 vào π, ví dụ:

5 + π 

Ta có thể giữ phương trình làm câu trả lời cho số vô tỉ hoặc làm tròn số π thành một số có một số chữ số thập phân ngắn gọn, rồi cộng các số lại với nhau:

5 + π = 5 + 3.14 = 8.14  

Tuy nhiên, nếu ta bắt đầu cố gắng đánh giá các con số bằng một kiểu dữ liệu khác, chẳng hạn như từ, mọi thứ bắt đầu kém ý nghĩa hơn. Ta sẽ giải phương trình sau như thế nào?

sky + 8 

Đối với máy tính, mỗi kiểu dữ liệu có thể được coi là khá khác nhau, chẳng hạn như từ và số, vì vậy ta sẽ phải cẩn thận về cách ta sử dụng chúng để gán giá trị và cách ta thao tác chúng thông qua các phép toán.

Số

Bất kỳ số nào bạn nhập bằng Python sẽ được hiểu là một số; bạn không bắt buộc phải khai báo loại dữ liệu bạn đang nhập. Python sẽ xem xét bất kỳ số lượng văn bản mà không cần số thập phân là một số nguyên (như trong 138 ) và bất kỳ số lượng văn bản với số thập phân như một phao (như trong 138.0 ).

Số nguyên

Giống như trong toán học , các số nguyên trong lập trình máy tính là các số nguyên có thể là số dương, số âm hoặc 0 (…, -1 , 0 , 1 ,…). Một số nguyên cũng có thể được biết đến như một số int . Như với các ngôn ngữ lập trình khác, bạn không nên sử dụng dấu phẩy với số lượng từ bốn chữ số trở lên, vì vậy khi bạn viết 1.000 trong chương trình của bạn , hãy viết nó là 1000 .

Ta có thể in ra một số nguyên theo cách đơn giản như sau:

print(-25) 
Output
-25

Hoặc, ta có thể khai báo một biến , trong trường hợp này về cơ bản là một ký hiệu của số ta đang sử dụng hoặc thao tác, như sau:

my_int = -25 print(my_int) 
Output
-25

Ta cũng có thể làm toán với số nguyên trong Python:

int_ans = 116 - 68 print(int_ans) 
Output
48

Số nguyên được dùng theo nhiều cách trong các chương trình Python và khi bạn tiếp tục tìm hiểu thêm về ngôn ngữ, bạn sẽ có rất nhiều cơ hội để làm việc với số nguyên và hiểu thêm về kiểu dữ liệu này.

Số dấu phẩy động

Một số dấu chấm động hay một phao là một số thực, nghĩa là nó có thể là một lý hoặc một số hợp lý. Do đó, số dấu phẩy động có thể là số có thể chứa một phần phân số, chẳng hạn như 9.0 hoặc -116.42 . Đơn giản chỉ cần nói, vì mục đích tư duy của một float trong một chương trình Python, nó là một con số có chứa một điểm thập phân.

Giống như ta đã làm với số nguyên, ta có thể in ra một số dấu phẩy động theo cách đơn giản như sau:

print(17.3) 
Output
17.3

Ta cũng có thể khai báo một biến đại diện cho một số float, như sau:

my_flt = 17.3 print(my_flt) 
Output
17.3

Và, giống như với số nguyên, ta cũng có thể làm toán với float trong Python:

flt_ans = 564.0 + 365.24 print(flt_ans) 
Output
929.24

Với số nguyên và số dấu phẩy động, điều quan trọng cần lưu ý là 3 ≠ 3.0, vì 3 là số nguyên trong khi 3.0 là số thực.

Booleans

Kiểu dữ liệu Boolean có thể là một trong hai giá trị, hoặc Đúng hoặc Sai . Boolean được sử dụng để biểu diễn các giá trị chân lý được liên kết với nhánh logic của toán học, thông báo cho các thuật toán trong repository a học máy tính.

Khi nào bạn nhìn thấy kiểu dữ liệu Boolean, nó sẽ bắt đầu bằng chữ B viết hoa vì nó được đặt tên cho nhà toán học George Boole. Các giá trị TrueFalse cũng sẽ luôn có chữ T và F viết hoa tương ứng, vì chúng là các giá trị đặc biệt trong Python.

Nhiều phép toán trong toán học cho ta câu trả lời được đánh giá là Đúng hoặc Sai:

  • lớn hơn
    • 500> 100 True
    • 1> 5 False
  • ít hơn
    • 200 <400 True
    • 4 <2 False
  • công bằng
    • 5 = 5 True
    • 500 = 400 False

Giống như với số, ta có thể lưu trữ giá trị Boolean trong một biến:

my_bool = 5 > 8 

Sau đó, ta có thể in giá trị Boolean bằng lời gọi hàm print() :

print(my_bool) 

Vì 5 không lớn hơn 8, ta sẽ nhận được kết quả sau:

Output
False

Khi bạn viết nhiều chương trình hơn bằng Python, bạn sẽ trở nên quen thuộc hơn với cách hoạt động của Booleans và cách các hàm và hoạt động khác nhau đánh giá thành True hoặc False có thể thay đổi quá trình của chương trình.

Dây

Chuỗi là một chuỗi gồm một hoặc nhiều ký tự (chữ cái, số, ký hiệu) có thể là hằng số hoặc biến. Các chuỗi tồn tại bên trong dấu ngoặc đơn ' hoặc dấu ngoặc kép " trong Python, vì vậy để tạo một chuỗi, hãy đặt một chuỗi ký tự trong dấu ngoặc kép:

'This is a string in single quotes.' 
"This is a string in double quotes." 

Bạn có thể chọn sử dụng dấu ngoặc kép đơn hoặc dấu ngoặc kép, nhưng tùy vào điều kiện nào bạn quyết định, bạn nên nhất quán trong một chương trình.

Chương trình đơn giản “Hello, World! ”Cho thấy cách một chuỗi được dùng trong lập trình máy tính, như các ký tự tạo nên cụm từ Hello, World! là một chuỗi.

print("Hello, World!") 

Như với các kiểu dữ liệu khác, ta có thể lưu trữ các chuỗi trong các biến:

hw = "Hello, World!" 

Và in ra chuỗi bằng cách gọi biến:

print(hw) 
Ouput
Hello, World!

Giống như các con số, có nhiều phép toán mà ta có thể thực hiện trên các chuỗi trong chương trình của bạn để thao tác chúng nhằm đạt được kết quả mà ta đang tìm kiếm. Các chuỗi rất quan trọng để truyền đạt thông tin cho user và để user truyền thông tin trở lại chương trình.

Danh sách

Danh sách là một chuỗi các phần tử có thứ tự có thể thay đổi hoặc thay đổi được. Mỗi phần tử hoặc giá trị nằm trong danh sách được gọi là một mục . Cũng giống như các chuỗi được định nghĩa là các ký tự giữa các dấu ngoặc kép, danh sách được xác định bằng cách có các giá trị giữa các dấu ngoặc vuông [ ] .

Danh sách các số nguyên trông như thế này:

[-3, -2, -1, 0, 1, 2, 3] 

Một danh sách các phao trông như thế này:

[3.14, 9.23, 111.11, 312.12, 1.05] 

Danh sách các chuỗi:

['shark', 'cuttlefish', 'squid', 'mantis shrimp'] 

Nếu ta xác định danh sách chuỗi của bạn là sea_creatures :

sea_creatures = ['shark', 'cuttlefish', 'squid', 'mantis shrimp'] 

Ta có thể in chúng ra bằng cách gọi biến:

print(sea_creatures) 

Và ta thấy rằng kết quả giống hệt như danh sách mà ta đã tạo:

Output
['shark', 'cuttlefish', 'squid', 'mantis shrimp']

Danh sách là một kiểu dữ liệu rất linh hoạt bởi vì chúng có thể thay đổi được trong đó chúng có thể có các giá trị được thêm vào, loại bỏ và thay đổi. Có một kiểu dữ liệu tương tự như danh sách nhưng không thể thay đổi được và được gọi là bộ tuple.

Tuples

Mộtbộ dữ liệu được sử dụng để group dữ liệu. Nó là một chuỗi các phần tử có thứ tự bất biến, hoặc không thể thay đổi.

Tuples rất giống với danh sách, nhưng chúng sử dụng dấu ngoặc đơn ( ) thay vì dấu ngoặc vuông và vì chúng là bất biến nên giá trị của chúng không thể sửa đổi được.

Một bộ tuple trông như thế này:

('blue coral', 'staghorn coral', 'pillar coral') 

Ta có thể lưu trữ một bộ giá trị trong một biến và in nó ra:

coral = ('blue coral', 'staghorn coral', 'pillar coral') print(coral) 
Ouput
('blue coral', 'staghorn coral', 'pillar coral')

Giống như các kiểu dữ liệu khác, Python in ra tuple giống như ta đã nhập nó, với dấu ngoặc đơn chứa một chuỗi giá trị.

Từ điển

Từ điển là kiểu ánh xạ tích hợp của Python. Điều này nghĩa là từ điển ánh xạ các khóa với các giá trị và các cặp key-value này là một cách hữu ích để lưu trữ dữ liệu trong Python. Một từ điển được tạo bằng dấu ngoặc nhọn ở hai bên { } .

Thường được sử dụng để giữ dữ liệu có liên quan, chẳng hạn như thông tin có trong ID, từ điển trông giống như sau:

{'name': 'Sammy', 'animal': 'shark', 'color': 'blue', 'location': 'ocean'} 

Bạn sẽ nhận thấy rằng ngoài dấu ngoặc nhọn, còn có dấu hai chấm trong suốt từ điển. Các từ bên trái dấu hai chấm là các phím. Các khóa có thể được tạo thành từ bất kỳ kiểu dữ liệu bất biến nào. Các khóa trong từ điển ở trên là: 'name', 'animal', 'color', 'location' .

Các từ ở bên phải dấu hai chấm là giá trị. Các giá trị có thể bao gồm bất kỳ kiểu dữ liệu nào. Các giá trị trong từ điển ở trên là: 'Sammy', 'shark', 'blue', 'ocean' .

Giống như các kiểu dữ liệu khác, hãy lưu trữ từ điển bên trong một biến và in nó ra:

sammy = {'name': 'Sammy', 'animal': 'shark', 'color': 'blue',  'location': 'ocean'} print(sammy) 
Ouput
{'color': 'blue', 'animal': 'shark', 'name': 'Sammy', 'location': 'ocean'}

Nếu ta muốn tách màu của Sammy, ta có thể thực hiện bằng cách gọi sammy['color'] . Hãy in nó ra:

print(sammy['color']) 
Output
blue

Vì từ điển cung cấp các cặp key-value để lưu trữ dữ liệu, chúng có thể là các yếu tố quan trọng trong chương trình Python của bạn.

Kết luận

Đến đây, bạn sẽ hiểu rõ hơn về một số kiểu dữ liệu chính có sẵn để bạn sử dụng trong Python. Mỗi kiểu dữ liệu này sẽ trở nên quan trọng khi bạn phát triển các dự án lập trình bằng ngôn ngữ Python.

Bạn có thể tìm hiểu chi tiết hơn về từng loại dữ liệu ở trên bằng cách đọc các hướng dẫn cụ thể sau:

Khi bạn đã nắm chắc các kiểu dữ liệu có sẵn trong Python, bạn có thể học cách chuyển đổi các kiểu dữ liệu .


Tags:

Các tin liên quan

Python 2 và Python 3: Cân nhắc thực tế
2016-08-17
Cách triển khai các ứng dụng web Python với Khung Micro Chai trên Ubuntu 14.04
2015-10-19
Cách triển khai các ứng dụng web Python với Framework Micro Chai trên CentOS 7
2015-10-19
Cách triển khai ứng dụng Python Web2py với uWSGI và Nginx trên Ubuntu 14.04
2015-03-17
Cách triển khai các ứng dụng Python Web2py với uWSGI và Nginx trên CentOS 7
2015-03-17
Cách xác thực một ứng dụng Python với Twitter bằng Tweepy trên Ubuntu 14.04
2015-02-04
Cách gửi tin nhắn dựa trên các phím định tuyến bằng thư viện RabbitMQ và Puka Python
2014-02-26
Cách đóng gói và phân phối các ứng dụng Python
2014-01-14
Cách triển khai ứng dụng web WSGI Python dựa trên kim tự tháp
2013-12-30
Cách triển khai ứng dụng WSGI Python bằng server Gunicorn HTTP đằng sau Nginx
2013-12-12