אפשר להשתמש באופרטור in
ב-Python כדי לבדוק אם מחרוזת קיימת ברשימה או לא. יש גם את האופרטור not in
לבדיקת כך שמחרוזת אינה קיימת ברשימה.
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
# מחרוזת ברשימה
if 'A' in l1:
print('A is present in the list')
# מחרוזת לא ברשימה
if 'X' not in l1:
print('X is not present in the list')
פלט:
A is present in the list
X is not present in the list
קריאה מומלצת: מחרוזות f ב-Python בואו נסתכל על דוגמה נוספת בה נבקש מהמשתמש להזין את המחרוזת לבדיקה ברשימה.
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = input('Please enter a character A-Z:\n')
if s in l1:
print(f'{s} is present in the list')
else:
print(f'{s} is not present in the list')
פלט:
Please enter a character A-Z:
A
A is present in the list
Python מצא מחרוזת ברשימה באמצעות count()
ניתן גם להשתמש בפונקציית count() כדי לקבל את מספר ההופעות של מחרוזת ברשימה. אם הפלט שלה הוא 0, אז זה אומר שהמחרוזת אינה קיימת ברשימה.
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
count = l1.count(s)
if count > 0:
print(f'{s} is present in the list for {count} times.')
מציאת כל האינדקסים של מחרוזת ברשימה
אין פונקציה מובנית לקבלת רשימת כל האינדקסים של מחרוזת ברשימה. הנה תוכנית פשוטה לקבלת רשימת כל האינדקסים שבהם המחרוזת קיימת ברשימה.
l1 = ['A', 'B', 'C', 'D', 'A', 'A', 'C']
s = 'A'
matched_indexes = []
i = 0
length = len(l1)
while i < length:
if s == l1[i]:
matched_indexes.append(i)
i += 1
print(f'{s} is present in {l1} at indexes {matched_indexes}')
פלט: A קיימת ב־['A', 'B', 'C', 'D', 'A', 'A', 'C'] באינדקסים [0, 4, 5]
אתה יכול לבדוק את סקריפט הפייתון המלא ודוגמאות נוספות בקובץ המקור שלנו ב־מאגר הקוד שלנו ב־GitHub.
Source:
https://www.digitalocean.com/community/tutorials/python-find-string-in-list