Khi cần trích xuất phần tử từ các phạm vi trong danh sách, một phép lặp đơn giản và phương thức 'mở rộng' được sử dụng
Ví dụ
Dưới đây là một minh chứng tương tự -
my_list = [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] print["The list is :"] print[my_list] range_list = [[12, 14], [17, 18], [22, 28]] print["The list is :"] print[range_list] my_result = [] for element in range_list: my_result.extend[my_list[element[0] : element[1] + 1]] print["The result is :"] print[my_result]
đầu ra
The list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] The list is : [[12, 14], [17, 18], [22, 28]] The result is : [99, 19]
Giải trình
Một danh sách các số nguyên được xác định và được hiển thị trên bàn điều khiển
Một danh sách các bộ khác được xác định và hiển thị trên bàn điều khiển
Một danh sách trống được xác định
Danh sách được lặp lại và phần tử thứ 0 và phần tử đầu tiên được tăng thêm 1 được thêm vào danh sách trống
Ở đây, chúng tôi trích xuất một số từ chuỗi danh sách, chúng tôi đã sử dụng phương thức split[] để trích xuất các số. split[] là một phương thức được xác định trước trong python để cắt ký tự đã chỉ định và trả về các ký tự khác trong danh sách.
list = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
đầu ra
Danh sách đã cho. ['Rs. 3’, ‘Rs. 8’, ‘Rs. 80', 'Rs. 25’]
Danh sách sau khi trích xuất. [3, 8, 80, 25]Chuỗi trích xuất Python từ danh sách
Bây giờ, chúng tôi trích xuất một chuỗi từ danh sách, chúng tôi sử dụng vòng lặp for để tìm kết quả khớp, do đó nó sẽ kiểm tra chuỗi con cụ thể và trả về chuỗi
list = ['Mark', 'Hark', 'Cark', 'Mack'] match = [s for s in list if "ark" in s] print[match]
đầu ra
['Mark', 'Hark', 'Cark']
Cách trích xuất một phần tử từ danh sách trong Python theo chỉ mục
Chúng tôi trích xuất các phần tử trong danh sách bằng cách chỉ định chỉ mục. Chúng tôi sử dụng vòng lặp for và lặp qua danh sách và trích xuất phần tử được chỉ định.
list = [11, 20, 23] indices = [0, 2] elements = [] for index in indices: elements.append[list[index]] print[elements]
đầu ra
[11, 23]
Python Chọn các phần tử từ danh sách theo điều kiện
Bây giờ, chúng ta sẽ sử dụng một số điều kiện để chọn các phần tử trong danh sách. Trong chương trình dưới đây, chúng tôi trích xuất các phần tử chia hết cho 3 bằng cách sử dụng vòng lặp for và if, chúng tôi tìm mod của 3 và sau đó in các phần tử
list = [3, 6, 49, 12, 18] for i in list: if i % 3 == 0: print[i]
đầu ra
3
6
12
18Cách chọn phần tử cuối cùng trong danh sách Python
Để lấy phần tử cuối cùng trong python, chỉ cần sử dụng danh sách [-1] trong câu lệnh in, nó sẽ in phần tử cuối cùng, đây được gọi là cắt trong python. Bằng cách cắt, chúng ta có thể lấy bất kỳ phần tử nào một cách dễ dàng
list = [3, 6, 49, 12, 18] print[list[-1]]
đầu ra
18
Viết chương trình Python để chọn ngẫu nhiên một mục từ danh sách
Để in một phần tử trong danh sách một cách ngẫu nhiên, hãy sử dụng ngẫu nhiên. lựa chọn [] trong mô-đun ngẫu nhiên có sẵn trong python, lấy danh sách làm tham số và trả về một số phần tử ngẫu nhiên từ danh sách
import random list = [3, 6, 49, 12, 18] print[random.choice[list]]
đầu ra
49
Nếu bạn thích bài đăng này, hãy chia sẻ nó với bạn bè của bạn. Bạn có muốn chia sẻ thêm thông tin về chủ đề đã thảo luận ở trên hay bạn có thấy điều gì không đúng không? . Cảm ơn bạn
Trong Python, bạn có thể tạo một danh sách mới bằng cách trích xuất, xóa, thay thế hoặc chuyển đổi các phần tử đáp ứng các điều kiện của danh sách hiện có bằng khả năng hiểu danh sách
Bài viết này mô tả các nội dung sau
- Khái niệm cơ bản về hiểu danh sách
- Áp dụng thao tác cho tất cả các phần tử của danh sách
- Trích xuất/xóa các phần tử thỏa mãn điều kiện khỏi danh sách
- Thay thế/chuyển đổi các phần tử thỏa mãn điều kiện trong danh sách
Xem bài viết sau để biết ví dụ về danh sách các chuỗi
- Trích xuất và thay thế các phần tử đáp ứng điều kiện của danh sách chuỗi trong Python
Cũng có thể lấy mẫu ngẫu nhiên các phần tử từ danh sách
- lấy mẫu ngẫu nhiên từ một danh sách trong Python [ngẫu nhiên. lựa chọn, mẫu, lựa chọn]
Lấy danh sách sau đây làm ví dụ
________số 8
nguồn. list_select_replace. py
Liên kết được tài trợ
Khái niệm cơ bản về hiểu danh sách
Trong Python, bạn có thể tạo một
3 bằng cách sử dụng khả năng hiểu danh sách. Nó đơn giản hơn là sử dụng vòng lặp[expression for variable_name in iterable if condition]
4[expression for variable_name in iterable if condition]
[expression for variable_name in iterable if condition]
5 được áp dụng cho các phần tử thỏa mãn[expression for variable_name in iterable if condition]
6 của[expression for variable_name in iterable if condition]
7 [danh sách, bộ, v.v. ] và một danh sách mới được tạo. Có thể bỏ đi[expression for variable_name in iterable if condition]
8, nếu bỏ đi thì áp dụng cho tất cả các phần tử của[expression for variable_name in iterable if condition]
5[expression for variable_name in iterable if condition]
Xem bài viết sau để biết chi tiết về hiểu danh sách
- Danh sách hiểu trong Python
Áp dụng thao tác cho tất cả các phần tử của danh sách
Nếu bạn viết thao tác mong muốn trong phần
5 của phần hiểu danh sách, thao tác đó sẽ được áp dụng cho tất cả các thành phần của danh sách[expression for variable_name in iterable if condition]
The list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] The list is : [[12, 14], [17, 18], [22, 28]] The result is : [99, 19]
8nguồn. list_select_replace. py
Bạn có thể sử dụng điều này để chuyển đổi danh sách số thành danh sách chuỗi. Xem chi tiết bài viết sau
- Chuyển đổi danh sách chuỗi và danh sách số với nhau trong Python
Liên kết được tài trợ
Trích xuất/xóa các phần tử thỏa mãn điều kiện khỏi danh sách
Nếu chỉ muốn chọn phần tử bằng
6 thì không cần xử lý bằng[expression for variable_name in iterable if condition]
5, có thể viết như sau[expression for variable_name in iterable if condition]
1list = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
Chỉ các phần tử đáp ứng các điều kiện [các phần tử trả về
The list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] The list is : [[12, 14], [17, 18], [22, 28]] The result is : [99, 19]
83 cho
6] mới được trích xuất và một danh sách mới được tạo[expression for variable_name in iterable if condition]
4list = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
nguồn. list_select_replace. py
Nếu thay đổi
8 thành[expression for variable_name in iterable if condition]
The list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] The list is : [[12, 14], [17, 18], [22, 28]] The result is : [99, 19]
86, chỉ những phần tử không đáp ứng điều kiện [các phần tử trả vềThe list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] The list is : [[12, 14], [17, 18], [22, 28]] The result is : [99, 19]
87 cho
6] mới được trích xuất. Điều này tương đương với việc loại bỏ các phần tử thỏa mãn điều kiện[expression for variable_name in iterable if condition]
9list = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
nguồn. list_select_replace. py
Tất nhiên, bạn có thể chỉ định một điều kiện tương ứng mà không cần sử dụng
The list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] The list is : [[12, 14], [17, 18], [22, 28]] The result is : [99, 19]
89
1list = ['Mark', 'Hark', 'Cark', 'Mack'] match = [s for s in list if "ark" in s] print[match]
nguồn. list_select_replace. py
Bạn cũng có thể kết nối nhiều điều kiện với
10 hoặclist = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
11. Phủ địnhlist = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
The list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] The list is : [[12, 14], [17, 18], [22, 28]] The result is : [99, 19]
89 cũng có thể được sử dụng
5list = ['Mark', 'Hark', 'Cark', 'Mack'] match = [s for s in list if "ark" in s] print[match]
nguồn. list_select_replace. py
Thay thế/chuyển đổi các phần tử thỏa mãn điều kiện trong danh sách
Nếu bạn muốn thay thế hoặc chuyển đổi các phần tử đáp ứng điều kiện mà không thay đổi các phần tử không đáp ứng điều kiện, hãy sử dụng các biểu thức điều kiện trong phần
5 của phần hiểu danh sách[expression for variable_name in iterable if condition]
Trong Python, biểu thức điều kiện có thể được viết như sau
7list = ['Mark', 'Hark', 'Cark', 'Mack'] match = [s for s in list if "ark" in s] print[match]
14 là giá trị hoặc biểu thức cholist = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
The list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] The list is : [[12, 14], [17, 18], [22, 28]] The result is : [99, 19]
83 và
16 là giá trị hoặc biểu thức cholist = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
The list is : [14, 55, 41, 14, 17, 59, 22, 25, 14, 69, 42, 66, 99, 19] The list is : [[12, 14], [17, 18], [22, 28]] The result is : [99, 19]
87- Biểu thức điều kiện trong Python
2list = [11, 20, 23] indices = [0, 2] elements = [] for index in indices: elements.append[list[index]] print[elements]
nguồn. list_select_replace. py
Sử dụng cách hiểu danh sách và biểu thức điều kiện
0[expression for variable_name in iterable if condition]
Phần đặt trong ngoặc đơn là biểu thức điều kiện. Không cần dấu ngoặc đơn trong mã thực tế
1[expression for variable_name in iterable if condition]
Nếu bạn viết
18 tronglist = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
14 hoặclist = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]
16, giá trị của phần tử ban đầu sẽ được sử dụng như hiện tại và nếu bạn viết một số biểu thức, biểu thức đó sẽ được áp dụnglist = ['Rs. 3', 'Rs. 8', 'Rs. 80', 'Rs. 25'] print["Given list : " + str[list]] res = [int[sub.split['.'][1]] for sub in list] print["List after extraction: " + str[res]]