पायथन इसका सीधा समर्थन नहीं करता। आप इसके लिए एक रैपर क्लास लिख सकते हैं। उदाहरण के लिए,
class FileLineWrapper(object):
def __init__(self, file):
self.f = file
self.curr_line = 0
def close(self):
return self.f.close()
def readline(self):
self.curr_line += 1
return self.f.readline()
# 'with' स्टेटमेंट में उपयोग करने की अनुमति देने के लिए
def __enter__(self):
return self
def __exit__(self, exc_type, exc_val, exc_tb):
self.close()
और उपरोक्त कोड का उपयोग इस प्रकार करें:
f = FileLineWrapper(open("my_file", "r"))
f.readline()
print(f.curr_line)
यह आउटपुट देगा: 1
यदि आप केवल readline मेथड का उपयोग कर रहे हैं तो लाइन नंबर ट्रैक करने के अन्य तरीके भी हैं। उदाहरण के लिए,
f = open("my_file", "r")
for line_no, line in enumerate(f):
print(line_no)
f.close()