Ví dụ, ở đâu:
list = [admin, add, swear] st = 'siteadmin'st Chứa chuỗi admin từ list.
- Làm thế nào tôi có thể thực hiện kiểm tra này?
- Làm thế nào tôi có thể được thông báo chuỗi nào từ list được tìm thấy và nếu có thể ở đâu (từ đầu đến cuối để làm nổi bật chuỗi vi phạm)?
Điều này sẽ hữu ích cho một danh sách đen.
Hỏi ngày 20 tháng 8 năm 2015 lúc 14:51Aug 20, 2015 at 14:51
StringsonfiRestringSonFireStringsOnFire
2.6665 huy hiệu vàng27 Huy hiệu bạc49 Huy hiệu đồng5 gold badges27 silver badges49 bronze badges
5
list = ['admin', 'add', 'swear'] st = 'siteadmin' if any([x in st for x in list]):print "found" else: print "not found"
Bạn có thể sử dụng bất kỳ chức năng tích hợp nào để kiểm tra xem bất kỳ chuỗi nào trong danh sách có xuất hiện trong chuỗi đích không
Đã trả lời ngày 20 tháng 8 năm 2015 lúc 15:17Aug 20, 2015 at 15:17
HootinghootingHooting
1.60111 Huy hiệu bạc20 Huy hiệu đồng11 silver badges20 bronze badges
0
Bạn có thể làm điều này bằng cách sử dụng danh sách các câu hỏi về danh sách
ls = [item for item in lst if item in st]Cập nhật: Bạn cũng muốn biết vị trí:
ls = [(item,st.find(item)) for item in lst if st.find(item)!=-1]Kết quả: [('Quản trị', 4)
Bạn có thể tìm thêm thông tin về toàn bộ danh sách trên trang này
Đã trả lời ngày 20 tháng 8 năm 2015 lúc 15:04Aug 20, 2015 at 15:04
ig-melnykig-melnykig-melnyk
2.7092 Huy hiệu vàng23 Huy hiệu bạc33 Huy hiệu Đồng2 gold badges23 silver badges33 bronze badges
2
Tôi giả sử danh sách này rất lớn. Vì vậy, trong chương trình này, tôi đang giữ các mục phù hợp trong một danh sách.
#declaring a list for storing the matched items matched_items = [] #This loop will iterate over the list for item in list: #This will check for the substring match if item in st: matched_items.append(item) #You can use this list for the further logic #I am just printing here print "===Matched items===" for item in matched_items: print itemĐã trả lời ngày 20 tháng 8 năm 2015 lúc 15:05Aug 20, 2015 at 15:05
Amal G Joseamal G JoseAmal G Jose
2.4231 Huy hiệu vàng19 Huy hiệu bạc34 Huy hiệu đồng1 gold badge19 silver badges34 bronze badges
Đây có phải là những gì bạn đang tìm kiếm?
for item in list: if item in st: print(item) break else: print("No string in list was matched")
Y4RD13
83612 Huy hiệu bạc36 Huy hiệu đồng12 silver badges36 bronze badges
Đã trả lời ngày 20 tháng 8 năm 2015 lúc 14:57Aug 20, 2015 at 14:57
0
for x in list: loc = st.find(x) if (loc != -1): print x print loc
String.find (i) Trả về chỉ mục của nơi tôi bắt đầu trong ST hoặc -1 khi thất bại. Đây là câu trả lời trực quan nhất theo ý kiến của tôi, bạn có thể biến điều này thành 1 lớp lót, nhưng tôi không phải là một fan hâm mộ lớn của những người đó.
Điều này cung cấp giá trị bổ sung khi biết nơi tìm thấy chuỗi con trong chuỗi.
Đã trả lời ngày 20 tháng 8 năm 2015 lúc 15:01Aug 20, 2015 at 15:01
Eugene Keugene kEugene K
3.3312 Huy hiệu vàng22 Huy hiệu bạc36 Huy hiệu Đồng2 gold badges22 silver badges36 bronze badges
Kiểm tra xem chuỗi có chứa chất nền trong Python không
Kiểm tra xem một chuỗi có chứa chuỗi con có phải là một trong những tác vụ phổ biến nhất trong bất kỳ ngôn ngữ lập trình nào. Python cung cấp nhiều cách để kiểm tra xem một chuỗi có chứa chuỗi con không. Cách đơn giản và nhanh nhất để kiểm tra xem một chuỗi có chứa chuỗi con hay không trong Python có sử dụng toán tử "trong" hay không, được sử dụng làm toán tử so sánh. Một số phương thức Python khác như Find (), Index (), Count (), v.v. cũng giúp kiểm tra xem một chuỗi có chứa chuỗi con không.contains a substring is one of the most common tasks in any programming language. Python offers many ways to check if a string contains a substring. The simplest and fastest way to check whether a string contains a substring or not in Python is using the "in" operator , which is used as a comparison operator . Some other Python methods such as find(), index(), count() etc. also help to Check if a string contains a substring.
Sử dụng toán tử "In" của Python
Cách đơn giản và nhanh nhất để kiểm tra xem một chuỗi có chứa chuỗi con hay không trong Python là toán tử "trong". Toán tử này trả về true nếu chuỗi chứa các ký tự, nếu không, nó sẽ trả về sai.fastest way to check whether a string contains a substring or not in Python is the "in" operator . This operator returns true if the string contains the characters, otherwise, it returns false .
đầu ra
Toán tử Python "In" có hai đối số, một ở bên trái và một bên phải và trả về true nếu chuỗi đối số bên trái được chứa trong chuỗi đối số bên phải."in" operator takes two arguments, one on the left and one on the right, and returns True if the left argument string is contained within the right argument string.
Thêm về toán tử "In"
Lưu ý: Toán tử "In" là trường hợp nhạy cảm, nó sẽ xử lý các ký tự chữ hoa và các ký tự thường khác nhau.case sensitive i.e, it will treat the Uppercase characters and Lowercase characters differently.
__contains __ () hàm
Lớp Chuỗi Python có phương thức __Contains __ () mà chúng ta có thể sử dụng để kiểm tra xem nó có chứa chuỗi khác hay không. Khi chúng ta sử dụng Python "trong" toán tử, bên trong, nó gọi __Contains __ () hàm. Phương thức __contains__ định nghĩa cách thức hoạt động của lớp khi chúng xuất hiện ở phía bên phải của in và không trong toán tử. Chúng ta cũng có thể sử dụng chức năng này trực tiếp, nhưng đừng. Các phương pháp bắt đầu với dấu gạch dưới được coi là riêng tư về mặt ngữ nghĩa, tuy nhiên bạn nên sử dụng trong nhà điều hành cho mục đích đọc.__contains__() method that we can use to check if it contains another string or not. When we use Python "in" operator , internally it calls __contains__() function. The __contains__ method defines how instances of class behave when they appear at right side of in and not in operator. We can use this function directly too, but don't . Methods that start with underscores are considered semantically private , however it's recommended to use in operator for readability purposes.
Sử dụng phương thức str.find () của Python
Một phương thức khác bạn có thể sử dụng là phương thức chuỗi.find (). Phương thức Find () đánh giá nếu chuỗi chứa một chuỗi con. Nếu có, phương thức Find () trả về chỉ số bắt đầu của một chuỗi con trong chuỗi nếu không nó sẽ trả về -1.string.find() method . The find() method evaluate if the string contains a substring . If it does, the find() method returns the starting index of a substring within the string otherwise it returns -1 .
đầu ra
Thêm phương thức find ()
Sử dụng phương thức str.find () là cách ít pythonic, nhưng nó vẫn được chấp nhận. Nó dài hơn và khó hiểu hơn một chút, nhưng nó vẫn hoàn thành công việc.str.find() method is the less Pythonic way , but it's still accepted. It's longer and a little bit more confusing, but it still gets the job done.
Sử dụng biểu thức thông thường Python
Biểu thức chính quy được sử dụng rộng rãi để khớp mẫu. Python có một gói tích hợp có tên Re, có thể được sử dụng để làm việc với các biểu thức thông thường. Mô -đun RE chứa một hàm gọi là search (), nó có thể được sử dụng để kiểm tra xem một chuỗi có chứa mẫu tìm kiếm được chỉ định không.pattern matching . Python has a built-in package called re , which can be used to work with Regular Expressions . The re module contains a function called search() , it can be used to check if a string contains the specified search pattern .
thí dụ
đầu ra
Sử dụng phương thức str.count ()
Nếu bạn muốn đếm số lần xuất hiện của một chuỗi con cụ thể trong một chuỗi, thì bạn có thể sử dụng phương thức Python Count (). Nếu chất nền không được tìm thấy trong một chuỗi, hàm sẽ trả về 0.number of occurrences of a specific substring in a string, then you can use Python count() method . If the substring is not found in a string, the function returns 0 .