Hướng dẫn python string does not contain list - chuỗi python không chứa danh sách

Tôi có một danh sách các chuỗi, từ đó tôi muốn định vị mọi dòng có ' //' trong đó, nhưng không có 'lulz', 'lmfao', '.png' hoặc bất kỳ mục nào khác trong danh sách của các chuỗi trong đó. Làm thế nào tôi sẽ đi về điều này?

Bản năng của tôi bảo tôi sử dụng các biểu thức thường xuyên, nhưng tôi có một sự phản đối đạo đức đối với phù thủy.

Đã hỏi ngày 8 tháng 3 năm 2012 lúc 0:59Mar 8, 2012 at 0:59

DirectionDirectiondirectedition

10,7K17 Huy hiệu vàng57 Huy hiệu bạc78 Huy hiệu đồng17 gold badges57 silver badges78 bronze badges

0

Dưới đây là một tùy chọn khá mở rộng nếu danh sách các chuỗi để loại trừ là lớn:

exclude = ['lulz', 'lmfao', '.png']
filter_func = lambda s: '//' in s and not any[x in s for x in exclude]

matching_lines = filter[filter_func, string_list]

Danh sách hiểu biết thay thế:

matching_lines = [line for line in string_list if filter_func[line]]

Đã trả lời ngày 8 tháng 3 năm 2012 lúc 1:07Mar 8, 2012 at 1:07

Andrew Clarkandrew ClarkAndrew Clark

196K33 Huy hiệu vàng265 Huy hiệu bạc297 Huy hiệu Đồng33 gold badges265 silver badges297 bronze badges

3

Điều này gần như tương đương với giải pháp của F.J, nhưng sử dụng các biểu thức tạo thay vì biểu thức Lambda và hàm bộ lọc:

haystack = ['//blah', '//lulz', 'blah blah', '//lmfao']
exclude = ['lulz', 'lmfao', '.png']

http_strings = [s for s in haystack if s.startswith['//']]
result_strings = [s for s in http_strings if not any[e in s for e in exclude]]

print list[result_strings]

Khi tôi chạy nó, nó in:

['//blah']

Đã trả lời ngày 8 tháng 3 năm 2012 lúc 1:10Mar 8, 2012 at 1:10

1

Thử cái này:

for s in strings:
    if '//' in s and not 'lulz' in s and not 'lmfao' in s and not '.png' in s:
        # found it
        pass

Tùy chọn khác, nếu bạn cần tùy chọn của mình linh hoạt hơn:

words = ['lmfao', '.png', 'lulz']
for s in strings:
    if '//' in s and all[map[lambda x, y: x not in y, words, list[s * len[words]]]:
        # found it
        pass

Đã trả lời ngày 8 tháng 3 năm 2012 lúc 1:03Mar 8, 2012 at 1:03

Pablo Santa Cruzpablo Santa CruzPablo Santa Cruz

172K31 Huy hiệu vàng238 Huy hiệu bạc290 Huy hiệu Đồng31 gold badges238 silver badges290 bronze badges

2

Kiểm tra xem chuỗi không chứa bất kỳ chuỗi nào từ danh sách trong Python #

Để kiểm tra xem một chuỗi không chứa bất kỳ chuỗi nào từ danh sách:

  1. Sử dụng một biểu thức máy phát để lặp qua danh sách.
  2. Kiểm tra xem mỗi mục danh sách không có trong chuỗi.
  3. Nếu điều kiện được đáp ứng cho tất cả các mục danh sách, chuỗi không chứa bất kỳ chuỗi nào trong danh sách.

Copied!

my_list = ['bobby', 'hadz', 'com'] my_str = 'abc bobby 2468' # ✅ Check if string does NOT contain any string from a list not_contains = all[item not in my_str for item in my_list] print[not_contains] # 👉️ False if not_contains: print['The string does NOT contain any string from the list'] else: # 👇️ this runs print['The string contains at least one of the strings from the list'] # --------------------------------------------------------------- # ✅ Check if string contains at least one string from a list contains = any[item in my_str for item in my_list] print[contains] # 👉️ True # --------------------------------------------------------------- # ✅ Find list items that are contained in a string matches = [item for item in my_list if item in my_str] print[matches] # 👉️ ['bobby']

Chúng tôi đã sử dụng một biểu thức máy phát để lặp qua danh sách.

Biểu thức của máy phát được sử dụng để thực hiện một số hoạt động cho mọi phần tử hoặc chọn một tập hợp con của các phần tử đáp ứng một điều kiện.

Copied!

my_list = ['bobby', 'hadz', 'com'] my_str = 'abc bobby 2468' not_contains = all[item not in my_str for item in my_list] print[not_contains] # 👉️ False

Trên mỗi lần lặp, chúng tôi kiểm tra xem mục danh sách hiện tại không có trong chuỗi và trả về kết quả.

Các thử nghiệm trong nhà điều hành để thành viên. Ví dụ,

matching_lines = [line for line in string_list if filter_func[line]]
1 đánh giá thành
matching_lines = [line for line in string_list if filter_func[line]]
2 nếu
matching_lines = [line for line in string_list if filter_func[line]]
3 là thành viên của
matching_lines = [line for line in string_list if filter_func[line]]
4, nếu không nó sẽ đánh giá thành
matching_lines = [line for line in string_list if filter_func[line]]
5.

matching_lines = [line for line in string_list if filter_func[line]]
6 trả về sự phủ định của
matching_lines = [line for line in string_list if filter_func[line]]
1.

Chức năng tích hợp tất cả [] lấy một sự khác biệt như một đối số và trả về

matching_lines = [line for line in string_list if filter_func[line]]
2 nếu tất cả các yếu tố trong điều đó là sự thật [hoặc điều đó là trống rỗng].

Nếu bạn cần kiểm tra xem chuỗi có chứa ít nhất một trong các chuỗi từ danh sách hay không, hãy sử dụng chức năng

matching_lines = [line for line in string_list if filter_func[line]]
9 thay thế.

Copied!

my_list = ['bobby', 'hadz', 'com'] my_str = 'abc bobby 2468' contains = any[item in my_str for item in my_list] print[contains] # 👉️ True if contains: print['The string contains at least one of the strings from the list'] else: print['The string does NOT contain any of the strings from the list']

Bất kỳ chức năng nào lấy một sự khác biệt như một đối số và trả về

matching_lines = [line for line in string_list if filter_func[line]]
2 nếu bất kỳ yếu tố nào trong điều đó là sự thật.

Trên mỗi lần lặp, chúng tôi kiểm tra xem mục danh sách hiện tại có chứa trong chuỗi không và trả về kết quả.

Nếu điều kiện được đáp ứng cho bất kỳ mục nào trong danh sách, hàm ngắn mạch

matching_lines = [line for line in string_list if filter_func[line]]
9 và trả về
matching_lines = [line for line in string_list if filter_func[line]]
2.

Nếu bạn cần thực hiện kiểm tra thành viên không nhạy cảm trường hợp, hãy chuyển đổi cả hai chuỗi thành chữ thường.

Copied!

my_list = ['bobby', 'hadz', 'com'] my_str = 'ABC BOBBY 2468' contains = any[item.lower[] in my_str.lower[] for item in my_list] print[contains] # 👉️ True if contains: print['The string contains at least one of the strings from the list'] else: print['The string does NOT contain any of the strings from the list']

Phương thức Str.Lower trả về một bản sao của chuỗi với tất cả các ký tự được chuyển đổi thành chữ thường.

Chuyển đổi cả hai chuỗi thành chữ thường hoặc chữ hoa cho phép chúng tôi kiểm tra tư cách thành viên theo cách nhạy cảm trường hợp.

Nếu bạn cần tìm các mục danh sách có trong chuỗi, hãy sử dụng danh sách hiểu.

matching_lines = [line for line in string_list if filter_func[line]]
0

Danh sách các hệ thống được sử dụng để thực hiện một số hoạt động cho mọi yếu tố hoặc chọn một tập hợp con của các phần tử đáp ứng một điều kiện.

Danh sách mới chỉ chứa các chuỗi được chứa trong chuỗi khác.

Làm thế nào để bạn kiểm tra xem một chuỗi có chứa trong danh sách Python?

Python Tìm chuỗi trong danh sách bằng cách sử dụng Count [], chúng ta cũng có thể sử dụng hàm Count [] để có được số lần xuất hiện của một chuỗi trong danh sách. Nếu đầu ra của nó là 0, thì điều đó có nghĩa là chuỗi không có trong danh sách.count[] We can also use count[] function to get the number of occurrences of a string in the list. If its output is 0, then it means that string is not present in the list.

Làm thế nào để bạn kiểm tra xem một chuỗi có trong danh sách không?

Sử dụng hàm bất kỳ [] để kiểm tra xem một chuỗi có chứa phần tử từ danh sách không, ví dụ:Nếu bất kỳ [chuỗi con trong my_str cho chuỗi con trong my_list]:.Hàm bất kỳ [] sẽ trả về true nếu chuỗi chứa ít nhất một phần tử từ danh sách và sai. to check if a string contains an element from a list, e.g. if any[substring in my_str for substring in my_list]: . The any[] function will return True if the string contains at least one element from the list and False otherwise.

Làm thế nào để bạn kiểm tra xem một danh sách không chứa một con trăn?

Để kiểm tra xem danh sách này có chứa một phần tử trong Python hay không, hãy sử dụng toán tử của In In trong.Toán tử trong các nhà điều hành của người Viking có kiểm tra xem danh sách có chứa một mục cụ thể hay không.Nó cũng có thể kiểm tra xem phần tử có tồn tại trong danh sách hoặc không sử dụng danh sách không.Đếm [] hàm.use the “in” operator. The “in” operator checks if the list contains a specific item or not. It can also check if the element exists on the list or not using the list. count[] function.

Làm cách nào để biến một danh sách thành một chuỗi trong Python?

Để chuyển đổi danh sách thành một chuỗi, hãy sử dụng khả năng hiểu danh sách Python và hàm tham gia [].Sự hiểu biết danh sách sẽ đi qua từng phần tử một và phương thức tham gia [] sẽ kết hợp các phần tử của danh sách thành một chuỗi mới và trả về nó làm đầu ra.use Python List Comprehension and the join[] function. The list comprehension will traverse the elements one by one, and the join[] method will concatenate the list's elements into a new string and return it as output.

Bài Viết Liên Quan

Chủ Đề