حالت آفلاین — محتوا از حافظهٔ کش نمایش داده می‌شود
آموزش کار با فایل در پایتون؛ CSV، JSON و گزارش‌گیری

پیش‌بینی read در پایتون؛ حفظ نویسه پایان خط

فایل متنی در پایتون؛ خواندن، نوشتن و متن فارسی · 0٪

✍️ متد read تمام متن باقی‌مانده فایل را به شکل یک رشته برمی‌گرداند. این رشته فقط کلمات نیست؛ فاصله، خط خالی و نویسه پایان خط هم داخلش هستند. اگر روی متن strip اجرا کنی، داری داده را تغییر می‌دهی؛ این کار فقط وقتی درست است که قرارداد حذف فاصله‌های دو سر را خواسته باشد.

مثلاً متن 'الف\nب' سه بخش دیداری دارد: الف، رفتن به خط بعد، و ب. وقتی با repr نمایش داده شود، نویسه پایان خط به صورت \n دیده می‌شود. حالا این کد مستقل را ردگیری کن:

import tempfile
from pathlib import Path
with tempfile.TemporaryDirectory() as folder:
    path = Path(folder) / 'note.txt'
    path.write_text('سلام\nدنیا\n', encoding='utf-8')
    with open(path, encoding='utf-8') as file:
        text = file.read()
    print(repr(text))

آخرین پایان خط هم بخشی از محتوای نوشته‌شده است. در این نمونه پایان خط‌ها LF یعنی \n هستند و read پایان خط اضافه یا کم نمی‌کند. خواندن متنی پیش‌فرض می‌تواند پایان خط ویندوزی \r\n را به \n تبدیل کند. خطای رایج، اشتباه گرفتن نمایش repr با محتوای واقعی است؛ نمایش برای آشکار کردن نویسه‌های پنهان از بک‌اسلش استفاده می‌کند. گزینه‌ای را انتخاب کن که هم پایان خط میانی و هم پایان خط آخر را نگه دارد.

فعالیت شما

نمایش repr متن خوانده‌شده را انتخاب کن؛ فایل دقیقاً سلام، پایان خط، دنیا و پایان خط دارد و هیچ strip اجرا نشده است. پایان خط مثال LF یعنی \n است.

مطالعهٔ این گام برای همه آزاد است

برای پاسخ‌دادن، بررسی پاسخ، ثبت پیشرفت و استفاده از دستیار باید شرایط شرکت در فعالیت‌ها را داشته باشید.

برای انجام فعالیت وارد شوید

برای انجام فعالیت‌ها ابتدا این دوره‌های پیش‌نیاز را تکمیل کنید:

گزینه‌های پیش‌بینی خروجی

  1. 'سلام\nدنیا\n'
  2. 'سلامدنیا'
  3. 'سلام\nدنیا'