Kinh Nghiệm về Kiểu tài liệu của những phần tử trong list là Mới Nhất
Bùi Khánh Ngọc đang tìm kiếm từ khóa Kiểu tài liệu của những phần tử trong list là được Cập Nhật vào lúc : 2022-05-30 19:44:03 . Với phương châm chia sẻ Bí kíp về trong nội dung bài viết một cách Chi Tiết 2022. Nếu sau khi tham khảo tài liệu vẫn ko hiểu thì hoàn toàn có thể lại Comments ở cuối bài để Tác giả lý giải và hướng dẫn lại nha.
Danh sách trong Python kí hiệu là list, hiểu đơn là một tập hợp những đối tượng có chung một tính chất nào đó. Ví dụ list những món ăn trên bàn tiệc, list những bài hát của một album, list học viên trong một lớp học…
Nội dung chính- 1. Giới thiệu kiểu list trong Python2. Các phép toán và phương thức của kiểu danh sách2.1. Toán tử in2.4. Phương thức append()2.5. Phương thức extend()2.6. Phương thức sort()2.7. Phương thức pop()2.8. Toán tử del2.9. Phương thức remove()3. Xử lý list trong Python3.1. Hàm map() để xử lý list trong Python3.2. Hàm filter() xử lý kiểu tài liệu list trong Python3.3. Hàm reduce() xử lý kiểu tài liệu list trong Python4. Danh sách của list, kiểu list nhiều chiều trong Python5. Danh sách và chuỗiVideo liên quan
Ta thấy ngay, mỗi list đều gồm có những phần tử rất khác nhau, để liệt kê chúng, ví dụ điển hình liệt kê những thực phẩm cần mua cho bữa liên hoan, bạn sẽ sử dụng dấu phẩy để ngăn cách những phần tử này. Python cũng vậy, tuy nhiên, những list những phần tử cần phải đặt trong cặp ngoặc vuông [].
1. Giới thiệu kiểu list trong Python
Để khai báo một list, tất cả chúng ta dùng liệt kê những phần tử của list, được đặt trong cặp ngoặc vuông [], những phần tử được ngăn cách nhau bởi dấu phảy ,. Mỗi phần tử trong list hoàn toàn có thể có kiểu bất kỳ như str, float, hay int…
Ví dụ sau tạo một list mon_an gồm có những phần tử kiểu xâu str là những món canh cua, cà pháo, cá kho và thịt rán.
>>> mon_an = ['canh cua', 'ca phao', 'ca kho', 'thit ran']Một list không hoàn toàn có thể phần tử, gọi là list rỗng.
>>> ban_gai = [] >>> ban_gai []Để truy cập vào một phần tử của list list trong Python, ta dùng tên list theo sau là chỉ số index của phần tử đó được đặt trong cặp ngoặc vuông.
>>> mon_an[3] 'thit ran'Cũng in như kiểu xâu str, những chỉ số index của một list list được đánh số bắt nguồn từ 0. Kiểu list hoàn toàn có thể hiểu gần in như kiểu mảng array trong những ngôn từ lập trình khác.
Không như kiểu xâu str, là những đối tượng immutable, thì kiểu list là đối tượng mutable, tức ta hoàn toàn có thể thay đổi những phần tử của một list. Chẳng hạn, thay cà pháo bằng dưa muối, ta sẽ gán giá trị mới cho phần tử mon_an[1].
>>> mon_an[1] = 'dua muoi' >>> mon_an ['canh cua', 'dua muoi', 'ca kho', 'thit ran']2. Các phép toán và phương thức của kiểu list
Cũng in như kiểu xâu str, kiểu list list cũng luôn có thể có những phép toán và phương thức đặc thù. Chúng ta sẽ lần lượt tìm hiểu những toán tử và phương thức/hàm của kiểu list trong Python.
2.1. Toán tử in
Toán tử in dùng để kiểm tra xem một phần tử có nằm trong list hay là không, kết quả trả về của toán tử này là kiểu boolean đúng True hoặc sai False.
>>> mon_an = ['canh cua', 'ca phao', 'ca kho', 'thit ran'] >>> 'canh cua' in mon_an True >>> 3000 in mon_an False
Bạn cũng hoàn toàn có thể sử dụng toán tử in để duyệt list trong vòng lặp for như sau.
>>> for i in mon_an: ... print(i) ... canh cua ca phao ca kho thit ran
Toán tử + được cho phép ghép nối hai list với nhau. Lưu ý rằng toán tử + này tương tự phép cộng hai xâu (chuỗi, string) chứ không in như toán tử cộng những số.
>>> a = [1, 2, 3] >>> b = ['x', 'y', 'z', 'a'] >>> a + b [1, 2, 3, 'x', 'y', 'z', 'a']Tương tự toán tử * dùng để lặp lại những phần tử trong list lên k lần.
>>> a = [0] * 4 >>> a [0, 0, 0, 0]2.4. Phương thức append()
Phương thức
>>> ds = [1, 2, 3, 4] >>> ds.append(5) >>> ds [1, 2, 3, 4, 5]
2.5. Phương thức extend()
Phương thức
2.6. Phương thức sort()
Phương thức
2.7. Phương thức pop()
Phương thức
2.8. Toán tử del
Toán tử del
>>> ds = [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> del ds[0] >>> ds [2, 3, 4, 5, 6, 7, 8, 9] >>> del ds[1:3] >>> ds [2, 5, 6, 7, 8, 9]
2.9. Phương thức remove()
Phương thức pop() xóa bỏ phần tử của list nhờ vào chỉ số của phần tử đó, thì phương thức
Nếu bạn muốn xóa bỏ tất cả những phần tử có mức giá trị
3. Xử lý list trong Python
Các thao tác thường được thực hiện trên list trong Python là xử lý từng phần tử của list, lọc lấy một số trong những phần tử thỏa điều kiện nào đó, tính toán trên tất cả những phần tử của list.
Để đơn giản việc xử lý list list, Python tương hỗ một số trong những hàm có sẵn để thực hiện những tác vụ trên gồm map(), filter(), reduce()
3.1. Hàm map() để xử lý list trong Python
Sử dụng câu lệnh map(func, seq) sẽ áp dụng hàm func cho từng phần tử của seq và trả về list kết quả.
Ví dụ, tính bình phương những số có trong list a sử dụng map():
a = [1, 2, 3, 4, 5] def binh_phuong(x): return x*x print(list(map(binh_phuong,a)))Có thể sử dụng hàm nặc danh lamda thay vì viết riêng một hàm binh_phuong.
>>> a = [1, 2, 3, 4, 5] >>> print(list(map(lambda x: x*x, a))) [1, 4, 9, 16, 25]Thêm một ví dụ nữa, tất cả chúng ta sẽ cộng tương ứng từng phần tử của hai list có cùng số lượng phần tử:
numbers1 = [1, 2, 3] numbers2 = [4, 5, 6] result = map(lambda x, y: x + y, numbers1, numbers2) print(list(result))3.2. Hàm filter() xử lý kiểu tài liệu list trong Python
Hàm filter(func, list) sẽ lần lượt gọi hàm func với tham số lần lượt là từng phần tử của list list và trả về list gồm những phần tử thỏa mãn hàm func. Lưu ý rằng hàm func phải là hàm mà kết quả trả về thuộc kiểu Boolean True hoặc False, tức là hàm func như thể một hàm điều kiện để lọc ra những phần tử của list list thỏa mãn điều kiện đó.
Ví dụ lọc ra những số chẵn từ list a.
a = [1, 2, 3, 4, 5, 6, 7, 8, 9] def so_chan(number): if number % 2 == 0: return True else: return False print (list(filter(so_chan, a)))Hoặc, sử dụng hàm nặc danh lambda, ta hoàn toàn có thể viết chương trình gọn hơn như sau:
>>> a = [1, 2, 3, 4, 5, 6, 7, 8, 9] >>> print (list(filter(lambda x: x%2 == 0, a))) [2, 4, 6, 8]Thêm một ví dụ nữa, sử dụng hàm filter() để in ra những nguyên âm trong một list:
def nguyen_am(x): ds_nguyen_am = ['a', 'e', 'i', 'o', 'u'] if (x in ds_nguyen_am): return True else: return False ds = ['g', 'e', 'e', 'j', 'k', 's', 'p', 'r'] kq = filter(nguyen_am, ds) for s in kq: print(s)3.3. Hàm reduce() xử lý kiểu tài liệu list trong Python
Hàm reduce(func,
Hàm func là một hàm nhận vào 2 tham số có dạng func(arg1, arg2) trong đó arg1 là kết quả tính toán với những phần tử trước, arg2 là giá trị của phần tử của list đang được tính toán.
Cách thức hoạt động và sinh hoạt giải trí của hàm reduce() rõ ràng như sau:
- Ở bước đầu tiên, hai phần tử đầu tiên của list
Lưu ý rằng, hàm reduce nằm trong thư viện functools, nên nên phải khai báo import functools trước khi sử dụng hàm reduce().
Ví dụ sau in ra tổng những giá trị của list và phần tử lớn số 1 của list.
from functools import * ds = [ 1 , 3, 5, 6, 2, ] print ("Tong cac phan tu cua danh sach la: ",end="") print (reduce(lambda a,b : a+b, ds)) print ("Phan tu lon nhat cua danh sach la: ",end="") print (reduce(lambda a,b : a if a > b else b, ds))Ví dụ tính tổng bình phương của những phần tử trong list a
a = [1, 2, 3, 4, 5] def tong_binh_phuong(kq, x): return kq + x*x print(reduce(tong_binh_phuong, a))4. Danh sách của list, kiểu list nhiều chiều trong Python
Các phần tử của một list list trong Python lại hoàn toàn có thể là một list, ví dụ điển hình
>>> A = [[1,2,3], [4,5,6], [7,8,9,10,11]] >>> A[1] [4, 5, 6] >>> A[1][2] 6 >>> A[2][4] 11 >>> A[1][5] Traceback (most recent call last): File "Danh sách A gồm có ba phần tử, mỗi phần tử lại là một list [1,2,3], [4,5,6], [7,8,9,10,11]. Khi đó, để truy cập đến phần tử j của list A[i] nằm trong list A ta dùng cú pháp A[i][j].
Kiểu tài liệu này tương ứng với kiểu mảng hai chiều array, hoặc là ma trận, trong những ngôn từ khác. Tuy nhiên, nếu một ma trận thì, nếu xét riêng từng dòng, bắt buộc những dòng phải có số cột như nhau. Nhưng ở đây thì khác, nếu ta viết lại list A ở trên, mỗi phần tử viết trên một dòng thì ta sẽ có dạng gần tương tự ma trận, do số cột của từng dòng là rất khác nhau
[1,2,3] [4,5,6] [7,8,9,10,11]Rõ ràng, kiểu list của list này linh hoạt hơn – nhưng cũng đồng nghĩa với khó trấn áp hơn – kiểu mảng hai chiều trong những ngôn từ khác.
5. Danh sách và chuỗi
Bạn hoàn toàn có thể phối hợp list và chuỗi để tách những ký tự trong chuỗi thành một list, sử dụng hàm ép kiểu list() như sau.
>>> s="phan van phuong" >>> list(s) ['p', 'h', 'a', 'n', ' ', 'v', 'a', 'n', ' ', 'p', 'h', 'u', 'o', 'n', 'g']
Hoặc hoàn toàn có thể tách một chuỗi thành list gồm những phần tử cách nhau bởi
>>> s="phan van phuong" >>> s.split() ['phan', 'van', 'phuong'] >>> s.split('n') ['pha', ' va', ' phuo', 'g']
Bài 1. Cho một list những số nguyên. Viết chương trình tìm phần tử lớn số 1 của list đó.
Bài 2. Cho một list những số nguyên. Viết chương trình in ra tất cả những phần tử lớn là số chẵn và to hơn 10 của list đó.
Bài 3. Viết chương trình tính số trung bình những giá trị của một list số nguyên.
Bài 4. Tạo một list gồm n số nguyên không âm ngẫu nhiên.
Xem thêm về những kiểu tài liệu list (list trong Python) tại https://www.w3schools.com/python/python_lists.asp