Có chức năng thay thế cho danh sách trong python không?

Trong Python, bạn có thể tạo một danh sách mới từ danh sách các chuỗi bằng cách trích xuất, thay thế hoặc chuyển đổi các phần tử đáp ứng các điều kiện nhất định bằng khả năng hiểu danh sách

Bài viết này giải thích ngắn gọn cách hiểu danh sách và sau đó mô tả những điều sau đây bằng mã mẫu

  • Trích xuất các chuỗi chứa hoặc không chứa một chuỗi cụ thể
  • Thay thế một chuỗi cụ thể trong danh sách
  • Trích xuất các chuỗi bắt đầu hoặc không bắt đầu bằng một chuỗi cụ thể
  • Trích xuất các chuỗi kết thúc hoặc không kết thúc bằng một chuỗi cụ thể
  • Trích xuất chuỗi bằng chữ hoa hoặc chữ thường
  • Chuyển đổi chữ hoa và chữ thường
  • Trích xuất chuỗi theo chữ cái hoặc số
  • Nhiều điều kiện
  • Biểu thức chính quy [regex]

Xem bài viết sau để biết thêm thông tin về cách trích xuất và thay thế chuỗi

  • Trích xuất một chuỗi con từ một chuỗi trong Python [vị trí, biểu thức chính quy]
  • Thay chuỗi trong Python [replace, translate, re. phụ, lại. phụ]

Liên kết được tài trợ

Danh sách hiểu

Để tạo một danh sách mới từ một danh sách, bạn có thể sử dụng khả năng hiểu danh sách, viết đơn giản hơn vòng lặp

[variable_name for variable_name in iterable if condition]
4

  • Danh sách hiểu trong Python

[expression for variable_name in iterable if condition]

Nếu bạn chỉ muốn trích xuất các phần tử đáp ứng

[variable_name for variable_name in iterable if condition]
5, bạn không cần xử lý chúng với
[variable_name for variable_name in iterable if condition]
6;

[variable_name for variable_name in iterable if condition]

Nếu đổi

[variable_name for variable_name in iterable if condition]
8 thành
[variable_name for variable_name in iterable if condition]
9 thì trích ra được các phần tử không thỏa mãn
[variable_name for variable_name in iterable if condition]
5

Để biết thêm thông tin về việc trích xuất, thay thế và chuyển đổi các phần tử danh sách bằng cách sử dụng tính năng hiểu danh sách, vui lòng tham khảo bài viết sau

  • Trích xuất, thay thế, chuyển đổi các phần tử của danh sách trong Python

Trích xuất các chuỗi chứa hoặc không chứa một chuỗi cụ thể

l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
1 trả về
l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
2 nếu
l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
3 chứa một
l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
4. Sử dụng
l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
5 để phủ định

  • toán tử in trong Python [đối với danh sách, chuỗi, từ điển, v.v. ]

l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']

nguồn. list_str_select_replace. py

Thay thế một chuỗi cụ thể trong danh sách

Nếu bạn muốn thay thế chuỗi phần tử của danh sách, hãy sử dụng phương thức chuỗi

l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
6 cho từng phần tử bằng cách hiểu danh sách

Nếu không có chuỗi nào được thay thế, việc áp dụng

l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
6 sẽ không thay đổi nó, vì vậy bạn không cần chọn phần tử có
[variable_name for variable_name in iterable if condition]
8

[expression for variable_name in iterable if condition]
8

nguồn. list_str_select_replace. py

Để thay thế toàn bộ phần tử chứa một chuỗi cụ thể, hãy trích xuất chuỗi đó bằng

l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
9 và sử dụng biểu thức điều kiện [toán tử bậc ba],
[expression for variable_name in iterable if condition]
80

  • Biểu thức điều kiện trong Python

Sử dụng các biểu thức điều kiện cho phần

[variable_name for variable_name in iterable if condition]
6 của việc hiểu danh sách

  • Trích xuất, thay thế, chuyển đổi các phần tử của danh sách trong Python

[variable_name for variable_name in iterable if condition]
2

nguồn. list_str_select_replace. py

Có thể dễ hiểu hơn và tránh nhầm lẫn với dấu ngoặc đơn. Về mặt ngữ pháp, có dấu ngoặc đơn hay không không quan trọng

[variable_name for variable_name in iterable if condition]
3

Trích xuất các chuỗi bắt đầu hoặc không bắt đầu bằng một chuỗi cụ thể

Phương thức chuỗi

[expression for variable_name in iterable if condition]
82 trả về
l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
2 nếu chuỗi bắt đầu bằng chuỗi cụ thể

[variable_name for variable_name in iterable if condition]
6

nguồn. list_str_select_replace. py

Trích xuất các chuỗi kết thúc hoặc không kết thúc bằng một chuỗi cụ thể

Phương thức chuỗi

[expression for variable_name in iterable if condition]
84 trả về
l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
2 nếu chuỗi kết thúc bằng chuỗi cụ thể

[variable_name for variable_name in iterable if condition]
9

nguồn. list_str_select_replace. py

Liên kết được tài trợ

Trích xuất chuỗi bằng chữ hoa hoặc chữ thường

Bạn có thể sử dụng các phương thức chuỗi

[expression for variable_name in iterable if condition]
86,
[expression for variable_name in iterable if condition]
87 để xác định xem một chuỗi là chữ hoa hay chữ thường

[variable_name for variable_name in iterable if condition]
2

nguồn. list_str_select_replace. py

Chuyển đổi chữ hoa và chữ thường

Nếu bạn muốn chuyển đổi tất cả các chữ cái thành chữ hoa hoặc chữ thường, hãy sử dụng các phương thức chuỗi

[expression for variable_name in iterable if condition]
88 hoặc
[expression for variable_name in iterable if condition]
89. Các phương pháp khác cũng được cung cấp, chẳng hạn như
[variable_name for variable_name in iterable if condition]
20 để viết hoa chữ cái đầu tiên và
[variable_name for variable_name in iterable if condition]
21 để hoán đổi chữ hoa và chữ thường

Sử dụng biểu thức điều kiện để chỉ chuyển đổi những phần tử thỏa mãn điều kiện

[variable_name for variable_name in iterable if condition]
7

nguồn. list_str_select_replace. py

Trích xuất chuỗi theo chữ cái hoặc số

Bạn có thể sử dụng các phương thức chuỗi

[variable_name for variable_name in iterable if condition]
22 và
[variable_name for variable_name in iterable if condition]
23 để xác định xem một chuỗi là toàn chữ cái hay toàn chữ số

  • Kiểm tra xem một chuỗi là số, chữ cái, chữ số hay ASCII

[variable_name for variable_name in iterable if condition]
0

nguồn. list_str_select_replace. py

Nhiều điều kiện

Bạn cũng có thể chỉ định nhiều điều kiện bằng cách sử dụng

[variable_name for variable_name in iterable if condition]
24 và
[variable_name for variable_name in iterable if condition]
25 trong phần
[variable_name for variable_name in iterable if condition]
5 của phần hiểu danh sách. Bạn cũng có thể sử dụng phủ định
[variable_name for variable_name in iterable if condition]
27

Nếu bạn sử dụng nhiều hơn ba điều kiện, thì việc thêm vào mỗi nhóm bằng

[variable_name for variable_name in iterable if condition]
28 sẽ an toàn hơn vì kết quả sẽ khác nhau tùy thuộc vào thứ tự

[variable_name for variable_name in iterable if condition]
1

nguồn. list_str_select_replace. py

Biểu thức chính quy [regex]

Bạn có thể sử dụng biểu thức chính quy [regex] để xử lý linh hoạt hơn

  • lại — Các phép toán biểu thức chính quy — Python 3. 9. 7 tài liệu

[variable_name for variable_name in iterable if condition]
29 trả về một đối tượng
[variable_name for variable_name in iterable if condition]
30 nếu nó khớp, hoặc
[variable_name for variable_name in iterable if condition]
31 nếu nó không khớp

Vì các đối tượng

[variable_name for variable_name in iterable if condition]
30 được đánh giá là
l = ['oneXXXaaa', 'twoXXXbbb', 'three999aaa', '000111222']

l_in = [s for s in l if 'XXX' in s]
print[l_in]
# ['oneXXXaaa', 'twoXXXbbb']

l_in_not = [s for s in l if 'XXX' not in s]
print[l_in_not]
# ['three999aaa', '000111222']
2 và
[variable_name for variable_name in iterable if condition]
31 là
[variable_name for variable_name in iterable if condition]
35, nên nếu bạn chỉ muốn trích xuất các phần tử khớp với mẫu biểu thức chính quy, bạn nên áp dụng
[variable_name for variable_name in iterable if condition]
29 cho phần
[variable_name for variable_name in iterable if condition]
5 của cách hiểu danh sách như trong các ví dụ trước

[variable_name for variable_name in iterable if condition]
2

nguồn. list_str_re. py

Bạn cũng có thể sử dụng

[variable_name for variable_name in iterable if condition]
38 để thay thế phần phù hợp với mẫu biểu thức chính quy. Nếu bạn chỉ muốn trích xuất và thay thế các phần tử phù hợp, hãy thêm
[variable_name for variable_name in iterable if condition]
8

Bạn có thể sử dụng thay thế trong danh sách Python không?

Bạn có thể thay thế các mục trong danh sách Python bằng cách sử dụng lập chỉ mục danh sách, hiểu danh sách hoặc vòng lặp for . Nếu bạn muốn thay thế một giá trị trong danh sách, cú pháp lập chỉ mục là phù hợp nhất.

Python có chức năng Thay thế không?

Phương thức thay thế chuỗi Python[] . Ghi chú. Tất cả các lần xuất hiện của cụm từ được chỉ định sẽ được thay thế, nếu không có gì khác được chỉ định. The replace[] method replaces a specified phrase with another specified phrase. Note: All occurrences of the specified phrase will be replaced, if nothing else is specified.

Chủ Đề