پرسش

چطور بفهمیم یک رشته در لیستی از رشته‌ها به عنوان زیررشته وجود دارد؟

How to check if a string is a substring of items in a list of strings?

یه لیست از رشته‌ها دارم و می‌خوایم بفهمیم که آیا یه رشته مشخص توی هر کدوم از اون رشته‌ها به عنوان زیررشته وجود داره یا نه. به عنوان مثال، یه لیستی از اسامی داریم و می‌خوایم بفهمیم که آیا یه اسم خاص توی هر کدوم از اون اسامی به عنوان زیررشته هست یا نه. چطور می‌تونیم این کار رو انجام بدیم؟

1403/06/07
پاسخ
رضا دولتی عاشق برنامه نویسی و هوش مصنوعی!
بیوگرافی رضا دولتی

برای اینکه بفهمیم آیا یه رشته خاص (مثلاً target) توی هر کدوم از رشته‌های یه لیست به عنوان زیررشته وجود داره یا نه، می‌تونیم از یک حلقه ساده استفاده کنیم. توی این حلقه، هر رشته رو با رشته مورد نظر مقایسه می‌کنیم و بررسی می‌کنیم که آیا زیررشته هست یا نه. می‌تونیم از عملگر in استفاده کنیم که این کار رو خیلی راحت و ساده می‌کنه. کد زیر رو ببین:

# List of strings to search in
string_list = ["hello", "world", "example", "string"]
# The substring we are looking for
target = "amp"
# Loop through the list and check if the target is in any of the strings
for item in string_list:
    if target in item:
        print(f"The substring '{target}' is in '{item}'")
        break
else:
    print(f"The substring '{target}' is not in the list")
  1. اول از همه، یه لیست از رشته‌ها داریم که قراره داخلشون دنبال زیررشته مورد نظر بگردیم.
  2. بعدش، یه رشته خاص داریم که می‌خوایم ببینیم آیا توی هر کدوم از اون رشته‌ها به عنوان زیررشته وجود داره یا نه.
  3. از یه حلقه for استفاده می‌کنیم که توی هر تکرار، یه رشته از لیست رو می‌گیره و بررسی می‌کنه که آیا زیررشته هست یا نه.
  4. اگه زیررشته پیدا بشه، همون لحظه پیغام چاپ می‌شه و حلقه متوقف می‌شه. ولی اگه تا آخر حلقه چیزی پیدا نشه، پیغام دیگه‌ای نشون داده می‌شه.

این روش خیلی ساده و کارآمده و نیازی به چیزهای پیچیده‌ای نداره.

پاسخ: 1403/06/07
آخرین آپدیت: 1403/08/16