یک فایل متنی را میتوان سلسلهای از خطوط در نظر گرفت. درست مثل سلسلهای از کاراکترها که در پایتون یک رشته خوانده میشود. نوشتهی زیر، یک فایل متنیست که فعالیتهای مرتبط با ایمیل را از افراد متفاوت جمعآوری میکند؛ این فایل از یک پروژهی متنباز به عاریت گرفته شده است:
1 2 3 4 5 6 7 8 |
From stephen.marquard@uct.ac.za Sat Jan 5 09:14:16 2008 Return-Path: <postmaster@collab.sakaiproject.org> Date: Sat, 5 Jan 2008 09:12:18 -0500 To: source@collab.sakaiproject.org From: stephen.marquard@uct.ac.za Subject: [sakai] svn commit: r39772 - content/branches/ Details: http://source.sakaiproject.org/viewsvn/?view=rev&rev=39772 ... |
کل فایل متنی را میتوانید از لینک زیر دریافت کنید:
لینک
همچنین یک نسخهی خلاصهشدهی آن در لینک زیر در دسترس است:
لینک
فرمت این فایلها استاندارد است و شامل چندین پیام پستی میشود. خطوطی که با کلمه ”From” آغاز میشوند، پیامها را جدا کرده و خطوطی که با ”From:” شروع میشوند، قسمتی از آن پیامها هستند. برای اطلاعات بیشتر در خصوص فرمت mbox این صفحه را ببیند:
لینک
برای شکستن فایل به خطوط، کاراکتر ویژهای که نشاندهندهی پایان خط است وجود دارد. این کاراکتر newline یا خطجدید خوانده میشود.
پایتون کاراکتر خطجدید را با یک بکاسلش و n مشخص میکند. اگرچه n به نظر دو کاراکتر است، ولی در اصل یک کاراکتر خوانده میشود. فرض کنید که ما این کاراکتر را در داخل متغیری با نام stuff قرار میدهیم. حالا اگر در داخل مفسر stuff را وارد کنیم، این کاراکتر هم نمایش داده میشود، ولی اگر از print استفاده کنیم، رشتهی ما به دو خط شکسته میشود.
در اصل در حین چاپ کردن متغیر، شما اثر کاراکتر n را خواهید دید، و نه خود کاراکتر را. برای شفاف شدن موضوع به مثال زیر دقت کنید:
1 2 3 4 5 6 7 8 9 10 11 12 |
>>> stuff = 'HellonWorld!' >>> stuff 'HellonWorld!' >>> print(stuff) Hello World! >>> stuff = 'XnY' >>> print(stuff) X Y >>> len(stuff) 3 |
برای اینکه مطمئن شوید که n تنها یک کاراکتر است بد نیست که طول رشتهی XnY را با پایتون اندازه بگیرید. میبینید که پایتون آن را سه کاراکتر در نظر میگیرد. در اصل n یک کاراکتر به حساب آمده است.
به این صورت، و با تصور وجود یک نویسهی نامرعی در پایان هر خط، انتهای خطوط در متنها مشخص میشود. کافیست که فقط آن را در ذهن خود تصویر کنید. این نویسه یا کاراکتر ناپیدا، همان n است.
حرف آخر اینکه کاراکتر خطجدید کاراکترهای موجود در یک فایل را به خطوط جداگانه میشکند.
این نوشته تحت مجوز کرییتیو کامنز BY – NC و حمایت موسسه تحقیقاتی رامونا ارائه میشود. شما میتوانید با توجه به مفاد این گواهی از آن استفاده کنید.