چطور یک فایل را خط به خط درون یک لیست بخوانیم؟
How to read a file line-by-line into a list
چطور میتونم یک فایل متنی رو خط به خط بخونم و هر خط رو به صورت یک آیتم درون یک لیست ذخیره کنم؟
برای اینکه یک فایل رو خط به خط بخونی و هر خط رو توی یه لیست بریزی، توی پایتون میتونی از روشهای مختلفی استفاده کنی. اینجا یک روش خیلی ساده و کاربردی رو بهت میگم:
with open('filename.txt') as file: lines = file.readlines()
این کد به این صورت کار میکنه:
- خط اول فایل رو باز میکنه و با استفاده از with مطمئن میشه که فایل به درستی باز و بسته بشه.
- file.readlines() هر خط از فایل رو میخونه و اونها رو به صورت یک لیست از رشتهها (strings) برمیگردونه.
اگر بخوای خطهای فایل رو بدون کاراکترهای پایان خط (\n) داخل لیست بریزی، میتونی اینطوری انجام بدی:
with open('filename.txt') as file: lines = [line.strip() for line in file]
این روش با استفاده از لیست کامپریهنشن (list comprehension) هر خط رو میخونه، strip() میکنه (که کاراکترهای پایان خط رو حذف میکنه) و بعد توی لیست ذخیره میکنه.
هر دو روش کاملاً کاربردی و درست هستند؛ بسته به نیازت میتونی از هرکدوم استفاده کنی.