for line in fileinput.FileInput("file.txt", inplace=1):
  if "success" in line:
    print(line)

जब मैं फ़ाइल इनपुट का उपयोग करता हूं, तो फ़ाइल 'file.txt' जारी नहीं होती है। मैं समस्या 'file.txt' को अभी भी उपयोग में देख सकता था। जब मैं सामान्य फ़ाइल ऑपरेशन का उपयोग करके उपरोक्त कार्य करता हूं, तो कोई समस्या नहीं दिखाई जाती है

फ़ाइल इनपुट के साथ समस्या को कैसे ठीक करें।

मैंने नीचे दिए गए कोड स्निपेट का इस्तेमाल किया, लेकिन समस्या फिर से दिख रही है। फ़ाइल बंद नहीं हो रही है मुझे लगता है

f = fileinput.input("file.txt", inplace=1)
    for line in f:
      if "success" in line:
      print(line)
    f.close()
1
Paddy 14 जिंदा 2020, 14:53

1 उत्तर

सबसे बढ़िया उत्तर

पायथन 2.7 में, आपको फ़ाइल इनपुट उदाहरण पर close() को स्पष्ट रूप से कॉल करना होगा:

try:
  f = fileinput.input("file.txt", inplace=1)
    for line in f:
      if "success" in line:
        print line, end=""
else:
  f.close()

पायथन 3.2 के बाद से, FileInput वर्ग का उपयोग संदर्भ प्रबंधक के रूप में किया जा सकता है। अधिक जानकारी के लिए fileinput प्रलेखन देखें।

with fileinput.input(files=('file.txt'), inplace=1) as f:
  for line in f:
    if "success" in line:
      print(line)
1
Marijn 17 जिंदा 2020, 14:40