۱ Fatemeh Soleymani
find common prefix
جامعه پایتون (وب) ایجاد شده در ۲۹ اردیبهشت ۱۴۰۲
words = ['hello', 'hell asd', 'hello wold']
new_word = list()
for word in words:
    if word[0:4]=='hell':
        new_word.append(word[:4])
print(new_word[0])

سلام وقت بخير

ممنون ميشم چك كنين ببينين كد من درسته يا نه؟ 

استاد فرمودن كه 

common prefix ”hell”

تو خروجي چاپ بشه ولي از زيپ استفاده نشه فقط حلقه‌ها و for

درود وقتتون بخیر

کدی که نوشتید درسته و از لیست استفاده شده و کلمه مشترک "hell" رو برمیگردونه


۱. یک لیست کلمات تعریف کردید: `words = ['hello', 'hell asd', 'hello wold']`.

۲. یک لیست خالی به نام `new_word` ایجاد کردید: `new_word = list()`.

۳. با استفاده از حلقه `for` روی هر کلمه توی لیست `words` حرکت می‌کنید: `for word in words`.

۴. داخل حلقه، بررسی می‌کنید که آیا چهار حرف اول هر کلمه (`word[0:4]`) برابر با 'hell' هست یا خیر: `if word[0:4] == 'hell'`.

۵. اگر شرط برقرار باشه، چهار حرف اول کلمه رو به لیست `new_word` اضافه میکنید: `new_word.append(word[:4])`.

۶. بعد از اتمام حلقه، اولین عنصر لیست `new_word` را چاپ می‌کنید: `print(new_word[0])`.

با فرض اینکه حداقل یک کلمه توی لیست `words` با 'hell' شروع بشه


این هم بهینه‌تر شده و پایتونیک‌تر شده کد هستش

words = ['hello', 'hell asd', 'hello wold']
new_word = [word[:4] for word in words if word.startswith('hell')]
if new_word:
    print(new_word[0])


موفق باشید?

بهترین پاسخ
Reza Mobaraki ۲۹ اردیبهشت ۱۴۰۲، ۱۹:۴۱