پائتھون میں فائلوں کو پڑھنے کے لیے اوپن(open) کا فنکشن استعمال ہوتا ہے اور اس میں پہلی دلیل فائل کا نام اور دوسری فائل کا موڈ ہوتا ہے۔ یہ فنکشن ایک فائل مفعول (object) بناتا ہے جسے استعمال کرکے دوسرے متعلقہ طریقہ کار کو بلایا جا سکتا ہے۔ فائل کو تین اسلوب (mode) میں کھولا جا سکتا ہے پڑھنے کے لیے (r) لکھنے کے لیے (w) اضافہ کے لیے (a) ان تینوں اسلوب میں بھی مزید آپشن ہیں مگر فی الحال ہم انہی پر اکتفا کریں گے۔ PHP: # Open a filefo = open("test.txt", "w")fo.write( "Python is a great language.\nYeah its great!!\n") # Close opend filefo.close() مندرجہ بالا کوڈ میں ایک فائل test.txt کو لکھنے کے لیے کھولا گیا ہے اور پھر فائل ہینڈل ( file handle or file object) جو اوپن فنکشن کے نتیجہ میں fo کو تفویض (assign) ہوا ہے اسے استعمال کیا گیا ہے۔ کوڈ: fo = open("test.txt", "w") دوسری لائن میں فائل مفعول (object) کا فنکشن write استعمال کرکے دو لائن لکھی گئی ہیں کوڈ: fo.write( "Python is a great language.\nYeah its great!!\n") اور پھر فائل کو بند کر دیا ہے گیا ہے۔ کوڈ: fo.close()
Read() Method read() methodطریقہ سے کھلی فائل میں سے اسٹرنگ پڑھی جا سکتی ہے ۔ پائتھون اسٹرنگ میں صرف ٹیکسٹ ہی نہیں بلکہ بائنری ڈیٹا بھی ہو سکتا ہے۔ اگر read() method میں نمبر پاس کیا جائے تو اس نمبر کے برابر بائٹس پڑھی جاتی ہیں اور اگر خالیread() method کال کیا جائے تو پوری فائل پڑھنے کی کوشش کی جاتی ہے۔ PHP: # Open a filefo = open("test.txt", "r+")str = fo.read(10);print ("Read String is : ", str)# Close opend filefo.close() مندرجہ بالا کوڈ میں test.txt فائل کو پڑھنے اور لکھنے دونوں کاموں کے لیے کھولا گیا ہے۔ اس کے بعد read کے طریقہ سے صرف 10 بائٹس پڑھی گئی ہیں اور انہیں str کو تفویض کر دیا گیا ہے ()readline فنکشن کی مدد سے ہم فائل میں سے ایک لائن کو پڑھ سکتے ہیں ۔ PHP: fo.readline() Output:Python is a great Language. ()readlines فنکشن کی مدد سے ہم فائل میں سے ایک لائن کو پڑھ سکتے ہیں ۔ PHP: fo.readlines() Output:Python is a great Language.Yeah its great!!
File Positions فائل میں جگہ (position) بنیادی اہمیت کی حامل ہے۔ tell() method فائل میں موجودہ جگہ کے بارے میں بتاتا ہے ، اگلی دفعہ پڑھائی اور لکھائی فائل میں اس جگہ سے ہو گی۔ seek(offset[, from]) method موجودہ فائل پوزیشن کو بدل دیتا ہے۔ offset دلیل سے مقررہ بائٹس تک منتقل کیا جاتا ہے۔ from کی مدد سے بتایا جا سکتا ہے کہ فائل میں کس جگہ سے بائٹس کو منتقل کرنا ہے ۔ اگر from = 0 ہے تو فائل کے شروع کی جگہ اگر from = 1 ہے تو فائل کی موجودہ جگہ اگر from = 2 ہے تو فائل کے اختتام کی جگہ PHP: # Open a filefo = open("foo.txt", "r+")str = fo.read(10);print ("Read String is : ", str) # Check current positionposition = fo.tell();print ("Current file position : ", position) # Reposition pointer at the beginning once againposition = fo.seek(0, 0);str = fo.read(10);print ("Again read String is : ", str)# Close opend f
فائل خصوصیات file.close file.mode file.filename file.softspace جب فائل کھلی ہو تو فائل مفعول (object) موجود ہوتا ہے اور فائل کے متعلق مختلف معلومات حاصل کی جا سکتی ہیں۔ اوپر فائل سے منسوب وصف درج ہیں۔ PHP: # Open a filefo = open("foo.txt", "wb")print ("Name of the file: ", fo.name)print ("Closed or not : ", fo.closed)print ("Opening mode : ", fo.mode)print ("Softspace flag : ", fo.softspace)
یونیکوڈ فائلوں کو کھولنے اور لکھنے کے لیے ایک اور ماڈیول کی ضرورت پڑتی ہے جس کا نام ہے codecs PHP: import codecs f = codecs.open('urduweb.txt', 'rU', 'utf-8')for line in f: # here line is a *unicode* string print(line) اس کوڈ میں سادہ اوپن کی جگہ ہم نے کوڈکس کے اوپن فنکشن کو استعمال کیا اور اینکوڈنگ (encoding) کے بارے میں بتایا ہے جو کہ عموما utf-8 ہی ہوتی ہے۔ مزید تفصیل کے لیے ایک علیحدہ دھاگہ ہو گا۔