Hàm len() trong Python
Hàm len trong Python cực kỳ hữu ích trong lập trình. Dưới đây là những điều bạn cần biết về hàm len Python.
Thế giới ngôn ngữ lập trình vô cùng đa dạng và phong phú với nhiều kiểu khác nhau. Bạn không nhất thiết phải học hết tất cả mà có thể chỉ tập trung vào những ngôn ngữ thật sự hứng thú. Ngoài HTML, CSS, JavaScript, Python cũng là một trong số ngôn ngữ lập trình phổ biến nhất hiện nay.
Học Python không khó. Về cơ bản, nó cũng bao gồm nhiều hàm hay các lệnh như những ngôn ngữ khác. Hãy bắt đầu từ những hàm Python cơ bản nhất trên Quantrimang.com. Ở bài viết này, chúng ta sẽ cùng nhau tìm hiểu về lệnh len trong Python.
Hàm Python len() được dùng để lấy độ dài của chuỗi dữ liệu. Một chuỗi là bộ sưu tập các ký tự và độ dài của chuỗi là số ký tự (giá trị Unicode) bên trong nó.
Hàm len() quyết định số lượng ký tự trong chuỗi bao gồm dấu câu, khoảng cách và tất cả kiểu ký tự đặc biệt. Số các thành phần được lưu trong đối tượng này chưa bao giờ được tính, vì thế, phương pháp này giúp cung cấp số các phần tử.
Ví dụ chuỗi “Tutorials Point” có 15 ký tự bao gồm cả khoảng cách.
Cú pháp hàm len() trong Python
len(chuoi)
Các tham số của hàm len()
Hàm len() có 1 tham số:
- chuoi: chuỗi ký tự (có thể là string, bytes, tuple, list, range, dictionary, set hoặc frozen set) mà bạn muốn tính toán độ dài.
Giá trị trả về từ len()
- Hàm len trả về số lượng ký tự của chuỗi đầu vào. Nếu không truyền tham số hoặc tham số không hợp lệ thì chương trình phát sinh ngoại lệ TypeError.
Ví dụ 1: Hàm len() hoạt động thế nào với tham số là tuple, list và range?
testList = []
print(testList, 'co do dai la', len(testList))
testList = [1, 2, 3]
print(testList, 'co do dai la', len(testList))
testTuple = (1, 2, 3)
print(testTuple, 'co do dai la', len(testTuple))
testRange = range(1, 10)
print('Do dai cua', testRange, 'la', len(testRange))
Chạy chương trình, kết quả trả về là
[] co do dai la 0
[1, 2, 3] co do dai la 3
(1, 2, 3) co do dai la 3
Do dai cua range(1, 10) la 9
Ví dụ 2: Hàm len() hoạt động thế nào với tham số là string và byte?
testString = ''
print('Do dai cua', testString, 'la', len(testString))
testString = 'Quantrimang'
print('Do dai cua', testString, 'la', len(testString))
# byte object
testByte = b'Quantrimang'
print('Do dai cua', testByte, 'la', len(testByte))
testList = [1, 2, 3]
# converting to bytes object
testByte = bytes(testList)
print('Do dai cua', testByte, 'la', len(testByte))
Chạy chương trình ta được kết quả trả về là:
Do dai cua la 0
Do dai cua Quantrimang la 11
Do dai cua b'Quantrimang' la 11
Do dai cua b'\x01\x02\x03' la 3
Ví dụ 3: Hàm len() hoạt động thế nào với tham số là dictionary và set?
testSet = {1, 2, 3}
print(testSet, 'co do dai la', len(testSet))
# Empty Set
testSet = set()
print(testSet, 'co do dai la', len(testSet))
testDict = {1: 'mot', 2: 'hai'}
print(testDict, 'co do dai la', len(testDict))
testDict = {}
print(testDict, 'co do dai la', len(testDict))
testSet = {1, 2}
# frozenSet
frozenTestSet = frozenset(testSet)
print(frozenTestSet, 'co do dai la', len(frozenTestSet))
Ta được kết quả trả về là:
{1, 2, 3} co do dai la 3
set() co do dai la 0
{1: 'mot', 2: 'hai'} co do dai la 2
{} co do dai la 0
frozenset({1, 2}) co do dai la 2
Khi thực thi, len() gọi phương thức __len__ của đối tượng nên bạn cũng có thể hình dung về hàm len() là:
def len(s):
return s.__len__()
Vì vậy, bạn có thể gán độ dài tùy chỉnh cho đối tượng (nếu cần).
Ví dụ 4: Hàm len() hoạt động thế nào với các đối tượng tùy chỉnh?
class Session:
def __init__(self, number = 0):
self.number = number
def __len__(self):
return self.number
# độ dài mặc định là 0
# viết bởi Quantrimang.com
s1 = Session()
print(len(s1))
# gán chiều dài tùy chỉnh
s2 = Session(6)
print(len(s2))
Chạy chương trình, kết quả trả về nhận được là:
0
6
Khám phá len() với các kiểu dữ liệu khác
Bạn không thể dùng tất cả các kiểu dữ liệu có sẵn làm đối số cho len(). Đối với các kiểu dữ liệu không chứa nhiều hơn một mục bên trong, khái niệm chiều dài không liên quan. Đây là trường hợp liên quan tới số và các kiểu Boolean:
>>> len(5)
Traceback (most recent call last):
...
TypeError: object of type 'int' has no len()
>>> len(5.5)
Traceback (most recent call last):
...
TypeError: object of type 'float' has no len()
>>> len(True)
Traceback (most recent call last):
...
TypeError: object of type 'bool' has no len()
>>> len(5 + 2j)
Traceback (most recent call last):
...
TypeError: object of type 'complex' has no len()
Các kiểu integer
, float
, Boolean
và complex
là những ví dụ về kiểu dữ liệu có sẵn mà bạn không thể dùng với len()
. Hàm này sinh ra TypeError khi đối số là một đối tượng của kiểu dữ liệu không có độ dài.
Dùng hàm len() với thư viện bên thứ ba
Bạn cũng có thể dùng len() của Python với một số kiểu dữ liệu tùy biến từ thư viện bên thứ ba. Dưới đây là một ví dụ phổ biến.
DataFrame của Pandas
Kiểu DataFrame trong thư viện pandas là kiểu dữ liệu khác, được sử dụng rộng rãi trong nhiều ứng dụng.
Trước khi có thể dùng pandas, bạn cần cài đặt nó bằng cách sử dụng lệnh sau trong console:
$ python -m pip install pandas
Bạn đã cài đặt gói pandas, và giờ bạn có thể tạo một DataFrame từ một từ điển:
>>> import pandas as pd
>>> marks = {
"Robert": [60, 75, 90],
"Mary": [78, 55, 87],
"Kate": [47, 96, 85],
"John": [68, 88, 69],
}
>>> marks_df = pd.DataFrame(marks, index=["Physics", "Math", "English"])
>>> marks_df
Robert Mary Kate John
Physics 60 78 47 68
Math 75 55 96 88
English 90 87 85 69
>>> len(marks_df)
3
>>> marks_df.shape
(3, 4)
Khóa của từ điển này là các chuỗi đại diện cho tên của học sinh trong một lớp. Giá trị của từng khóa là danh sách chứa điểm cho 3 môn học. Khi tạo DataFrame từ dictionary, bạn xác định index bằng một danh sách chứa tên môn học.
DataFrame có 3 hàng và 4 cột. Hàm len() trả về số hàng trong DataFrame. Kiểu DataFrame cũng có một thuộc tính .shape
, mà bạn có thể dùng để hiện thứ nguyên đầu tiên của DataFrame đại diện cho số hàng.
Bạn nên đọc
Cũ vẫn chất
-
30 lời chúc sinh nhật chồng yêu ý nghĩa và ngọt ngào
Hôm qua 1 -
Hướng dẫn chuyển sang ngôn ngữ tiếng Việt cho Gmail
Hôm qua -
5 cách tắt Update Windows 11, ngừng cập nhật Win 11
Hôm qua 14 -
Bạn đã sử dụng keo tản nhiệt đúng cách?
Hôm qua -
Đấu Trường Chân Lý Mobile (TFT Mobile)
-
Code LaLa Land Lục Địa Bí Ẩn mới nhất và cách nhập code
Hôm qua 2 -
‘Ghét’ Apple, Mark Zuckerberg vẫn phải dùng Macbook nhưng nó lạ lắm
Hôm qua 1 -
Những câu nói hay về mùa thu, lời chào mùa thu hay và ý nghĩa
Hôm qua -
70 câu ca dao, tục ngữ về học tập hay nhất
Hôm qua -
Cách sửa file MP4 bị hỏng với thủ thuật đơn giản
Hôm qua