من زیاد پایتون کار نکردم و همیشه فقط وقتی نیاز بوده رفتم سراغش، ولی یکی از زبون‌های متفاوت بوده برای من، جذاب. از پایتون بصورت گسترده توی پردازش داده استفاده میشه کتابخونه‌های قدرتمندی هم براش نوشته شده، البته اینجا قرار نیست وارد این داستان‌ها بشیم و تنها میخوایم گذر کوتاهی داشته باشیم به این که طور براحتی فایل‌های `CSV` رو بخونیم و بنویسیم.

کتابخانه `csv` توی پایتون اندازه‌ای خوب، ساده و قدرتمند هست که شما به راحتی میتونید فایل‌های خودتون رو ایجاد کنید یا بخونید، این کتابخانه فایل `csv` رو بصورت یک آرایه در اختیار شما قرار میده. تنها کافیه فایل مورد نظر خودتون رو باز کنید(`with open('data.csv', 'rb') as inp:`)، توسط کتابخانه اون رو بخونید (`myCSV = csv.reader(inp, delimiter=',', quotechar='|')`) واز اون استفاده کنید.

``` with open('file.csv', 'rb') as inp: myCSV = csv.reader(inp, delimiter=',', quotechar='|') for line in myCSV: key = line[0]+','+line[1]
<p>عموما اولین سطر در فایل‌های `csv` شامل نام ستون‌ها است، در صورتی که علاقه‌ای به نام ستون‌ها ندارید براحتی می‌تواند از آنها صرف نظر کنید.</p>

with open('file.csv', 'rb') as inp:
myCSV = csv.reader(inp, delimiter=',', quotechar='|')
next(myCSV, None) # return header or None if file empty
for line in myCSV:
key = line[0]+','+line[1]

<p>در مورد نوشتن هم شرایط بسیار مشابه با خوندن هست</p>

with open('inp.csv', 'rb') as inp, open("out.csv", "wb") as outfile:
inp = csv.reader(inp, delimiter=',')
writer = csv.writer(outfile)
next(inp)
index = 0
for line in inp:
# .. do what you want
index += 1
if ( ... ): # a silly condition
writer.writerow([
index,
line[4],
... // some bullshit
])