Các loại biến trong Python

Các biến là vị trí bộ nhớ dành riêng để lưu trữ các giá trị. Điều này có nghĩa là khi bạn tạo một biến bạn dành một khoảng trống trong bộ nhớ để lưu trữ giá trị của nó.

Dựa trên kiểu dữ liệu của một biến, trình thông dịch phân bổ bộ nhớ và quyết định những gì có thể được lưu trữ trong bộ nhớ dành riêng.

Do đó, bằng cách gán các loại dữ liệu khác nhau cho các biến, bạn có thể lưu trữ số nguyên, số thập phân hoặc ký tự trong các biến này.

Gán giá trị cho biến

Các biến Python không cần khai báo rõ ràng để hạn chế dung lượng bộ nhớ. Khai báo tự động xảy ra khi bạn gán giá trị cho một biến. Dấu bằng (=) được sử dụng để gán giá trị cho các biến.

Toán hạng bên trái toán tử = là tên của biến và toán hạng bên phải toán tử = là giá trị được lưu trong biến. Ví dụ:

#!/usr/bin/python

counter = 100          # An integer assignment
miles   = 1000.0       # A floating point
name    = "John"       # A string

print counter
print miles
print name

Ở đây, 100, 1000.0 và "John" là những giá trị được gán cho biến counter , miles , và name tương ứng. Điều này tạo ra kết quả sau:

100
1000.0
John

Gán giá trị đồng thời cho nhiều biến

Python cho phép bạn gán một giá trị duy nhất cho một số biến đồng thời. Ví dụ:

a = b = c = 1

Ở đây, một đối tượng số nguyên được tạo với giá trị 1 và cả ba biến được gán cho cùng một vị trí bộ nhớ. Bạn cũng có thể gán nhiều đối tượng cho nhiều biến. Ví dụ:

a,b,c = 1,2,"john"

Ở đây, hai đối tượng số nguyên có giá trị 1 và 2 được gán cho biến a và b tương ứng và một đối tượng chuỗi có giá trị "john" được gán cho biến c.

Kiểu dữ liệu chuẩn

Dữ liệu được lưu trữ trong bộ nhớ có thể có nhiều loại. Ví dụ: tuổi của một người được lưu trữ dưới dạng giá trị số và địa chỉ của người đó được lưu dưới dạng ký tự chữ và số. Python có nhiều kiểu dữ liệu tiêu chuẩn khác nhau được sử dụng để xác định các thao tác có thể thực hiện trên chúng và phương thức lưu trữ cho từng loại.

Python có năm loại dữ liệu tiêu chuẩn:

  • Số (Number)
  • Chuỗi (String)
  • Danh sách (List)
  • Bộ dữ liệu (Tuple)
  • Từ điển (Dictionary)

Số trong Python

Kiểu dữ liệu số lưu trữ giá trị số. Các đối tượng số được tạo khi bạn gán giá trị cho chúng. Ví dụ về biến kiểu số trong Python:

var1 = 1
var2 = 10

Bạn cũng có thể xóa tham chiếu đến một đối tượng số bằng cách sử dụng câu lệnh del. Cú pháp của câu lệnh del như sau:

del var1[,var2[,var3[....,varN]]]]

Bạn có thể xóa một đối tượng hoặc nhiều đối tượng bằng cách sử dụng câu lệnh del. Ví dụ:

del var
del var_a, var_b

Python hỗ trợ bốn loại số khác nhau:

  • int (số nguyên có dấu)
  • long (số nguyên dài, chúng cũng có thể được biểu diễn dưới dạng bát phân và thập lục phân)
  • float (giá trị thực dấu phẩy động)
  • complex (số phức)

Ví dụ

Dưới đây là một số ví dụ về các con số:

int long float complex
10 51924361L 0.0 3.14j
100 -0x19323L 15.20 45.j
-786 0122L -21.9 9.322e-36j
080 0xDEFABCECBDAECBFBAEl 32.3+e18 .876j
-0490 535633629843L -90. -.6545+0J
-0x260 -052318172735L -32.54e100 3e+26J
0x69 -4721885298529L 70.2-E12 4.53e-7j
  • Python cho phép bạn sử dụng chữ thường chữ l cho long, nhưng bạn chỉ nên sử dụng chữ L viết hoa để tránh nhầm lẫn với số 1. Python hiển thị số nguyên dài có chữ L hoa.
  • Một số phức bao gồm một cặp số có dấu phẩy động thực được ký hiệu là x + yj, trong đó x và y là số thực và j là đơn vị ảo.

Chuỗi trong Python

Các chuỗi trong Python được định nghĩa là một tập hợp các ký tự liền kề được biểu thị trong dấu nháy kép. Python cho phép một trong hai cặp dấu nháy đơn hoặc dấu nháy kép.

Các tập hợp con của chuỗi có thể được lấy bằng toán tử ([] và [:]) với các chỉ mục bắt đầu từ 0 ở đầu chuỗi và làm việc theo cách của chúng từ -1 ở cuối.

Dấu cộng (+) là toán tử nối chuỗi và dấu hoa thị (*) là toán tử lặp lại. Ví dụ:

#!/usr/bin/python

str = 'Hello World!'

print str          # Prints complete string
print str[0]       # Prints first character of the string
print str[2:5]     # Prints characters starting from 3rd to 5th
print str[2:]      # Prints string starting from 3rd character
print str * 2      # Prints string two times
print str + "TEST" # Prints concatenated string

Điều này sẽ tạo ra kết quả sau

Hello World!
H
llo
llo World!
Hello World!Hello World!
Hello World!TEST

Danh sách trong Python

Danh sách là loại linh hoạt nhất trong các loại dữ liệu hỗn hợp của Python. Danh sách chứa các phần tử được phân tách bằng dấu phẩy và được đặt trong dấu ngoặc vuông ([]).

Ở một mức độ nào đó, danh sách tương tự như mảng trong C. Một điểm khác biệt giữa chúng là tất cả các phần tử thuộc danh sách có thể thuộc những loại dữ liệu khác nhau.

Các giá trị được lưu trữ trong danh sách có thể được truy cập bằng toán tử lát ([] và [:]) với các chỉ mục bắt đầu từ 0 ở đầu danh sách và làm việc theo cách của chúng để kết thúc -1.

Dấu cộng (+) là toán tử nối danh sách và dấu hoa thị (*) là toán tử lặp lại. Ví dụ:

#!/usr/bin/python

list = [ 'abcd', 786 , 2.23, 'john', 70.2 ]
tinylist = [123, 'john']

print list          # Prints complete list
print list[0]       # Prints first element of the list
print list[1:3]     # Prints elements starting from 2nd till 3rd 
print list[2:]      # Prints elements starting from 3rd element
print tinylist * 2  # Prints list two times
print list + tinylist # Prints concatenated lists

Điều này tạo ra kết quả sau:

['abcd', 786, 2.23, 'john', 70.2]
abcd
[786, 2.23]
[2.23, 'john', 70.2]
[123, 'john', 123, 'john']
['abcd', 786, 2.23, 'john', 70.2, 123, 'john']

Bộ dữ liệu trong Python

Một bộ dữ liệu (tuple) là một kiểu dữ liệu danh sách khác tương tự như danh sách. Một bộ dữ liệu bao gồm một số giá trị được phân tách bằng dấu phẩy. Tuy nhiên, không giống như danh sách, các bộ dữ liệu được đặt trong dấu ngoặc đơn.

Sự khác biệt chính giữa danh sách và bộ dữ liệu là: Danh sách được đặt trong ngoặc ([]) và các thành phần và kích thước của chúng có thể được thay đổi, trong khi bộ dữ liệu được đặt trong dấu ngoặc đơn (()) và không thể cập nhật. Bộ dữ liệu có thể được coi là danh sách chỉ đọc. Ví dụ:

#!/usr/bin/python

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
tinytuple = (123, 'john')

print tuple           # Prints complete list
print tuple[0]        # Prints first element of the list
print tuple[1:3]      # Prints elements starting from 2nd till 3rd 
print tuple[2:]       # Prints elements starting from 3rd element
print tinytuple * 2   # Prints list two times
print tuple + tinytuple # Prints concatenated lists

Điều này tạo ra kết quả sau:

('abcd', 786, 2.23, 'john', 70.2)
abcd
(786, 2.23)
(2.23, 'john', 70.2)
(123, 'john', 123, 'john')
('abcd', 786, 2.23, 'john', 70.2, 123, 'john')

Đoạn mã sau không hợp lệ với bộ dữ liệu, vì chúng tôi đã cố cập nhật một bộ dữ liệu, điều này là không được phép. Trường hợp tương tự với danh sách thì có thể:

#!/usr/bin/python

tuple = ( 'abcd', 786 , 2.23, 'john', 70.2  )
list = [ 'abcd', 786 , 2.23, 'john', 70.2  ]
tuple[2] = 1000    # Invalid syntax with tuple
list[2] = 1000     # Valid syntax with list

Từ điển trong Python

Từ điển (Dictionary) của Python là loại bảng băm bao gồm các cặp khóa-giá trị. Chúng hoạt động như các mảng kết hợp hoặc băm được tìm thấy trong Perl. Khóa từ điển có thể là hầu hết mọi kiểu dữ liệu trong Python, nhưng thường là số hoặc chuỗi. Mặt khác, các giá trị có thể là bất kỳ đối tượng Python tùy ý.

Từ điển được bao quanh bởi dấu ngoặc nhọn ({}) và các giá trị có thể được chỉ định và truy cập bằng dấu ngoặc vuông ([]). Ví dụ:

#!/usr/bin/python

dict = {}
dict['one'] = "This is one"
dict[2]     = "This is two"

tinydict = {'name': 'john', 'code': 6734, 'dept': 'sales'}


print dict['one']       # Prints value for 'one' key
print dict[2]           # Prints value for 2 key
print tinydict          # Prints complete dictionary
print tinydict.keys()   # Prints all the keys
print tinydict.values() # Prints all the values

Điều này tạo ra kết quả sau:

This is one
This is two
{'dept': 'sales', 'code': 6734, 'name': 'john'}
['dept', 'code', 'name']
['sales', 6734, 'john']

Từ điển không có khái niệm về trật tự giữa các yếu tố. Không đúng khi nói rằng các yếu tố là "không theo thứ tự"; chúng chỉ đơn giản là không có thứ tự.

Chuyển đổi kiểu dữ liệu

Đôi khi, bạn có thể cần thực hiện chuyển đổi giữa các loại tích hợp. Để chuyển đổi giữa các loại, bạn chỉ cần sử dụng tên loại làm hàm.

Có một số hàm dựng sẵn để thực hiện chuyển đổi từ loại dữ liệu này sang loại dữ liệu khác. Các hàm này trả về một đối tượng mới biểu thị giá trị được chuyển đổi.

STT Hàm & Mô tả
1

int(x [,base])

Chuyển đổi x thành một số nguyên. base chỉ định cơ sở nếu x là một chuỗi.

2

long(x [,base] )

Chuyển đổi x thành một số nguyên dài. base chỉ định cơ sở nếu x là một chuỗi.

3

float(x)

Chuyển đổi x thành một số dấu phẩy động.

4

complex(real [,imag])

Tạo một số phức.

5

str(x)

Chuyển đổi đối tượng x thành một chuỗi đại diện.

6

repr(x)

Chuyển đổi đối tượng x thành một chuỗi biểu thức.

7

eval(str)

Đánh giá một chuỗi và trả về một đối tượng.

8

tuple(s)

Chuyển đổi s thành một tuple.

9

list(s)

Chuyển đổi s thành một danh sách.

10

set(s)

Chuyển đổi s thành một tập hợp.

11

dict(d)

Tạo một từ điển. d phải là một chuỗi các khóa (khóa, giá trị).

12

frozenset(s)

Chuyển đổi s thành một tuple đóng băng.

13

chr(x)

Chuyển đổi một số nguyên thành một ký tự.

14

unichr(x)

Chuyển đổi một số nguyên thành một ký tự Unicode.

15

ord(x)

Chuyển đổi một ký tự thành giá trị nguyên của nó.

16

hex(x)

Chuyển đổi một số nguyên thành một chuỗi thập lục phân.

17

oct(x)

Chuyển đổi một số nguyên thành một chuỗi bát phân.



Bài viết liên quan:

Kiểu chuỗi trong Python là gì? Làm sao để khai báo biến và sử dụng các hàm tích hợp, định dạng kiểu chuỗi trong Python?

Kiểu số trong Python là gì? Python có những kiểu dữ liệu số nào? Các hàm tiện ích về số trong Python?

Vòng lặp trong Python là gì? Python hỗ trợ những loại vòng lặp nào? Cách sử dụng những vòng lặp này trong Python.