जब मैं .format()
का उपयोग करके फ़ाइल में जानकारी लिखने का प्रयास करता हूं तो मुझे समस्या का सामना करना पड़ रहा है।
मैं write()
पाठ की कोशिश कर रहा हूं जिसे पाठ फ़ाइल से दूसरी फ़ाइल में पढ़ा गया है और फिर प्रत्येक पंक्ति के बारे में जानकारी लिखता है:
{0}
- लाइनों की संख्या{1}
- रेखा में कितने स्थान चिह्न हैं{2}
- रेखा में कुल कितने प्रतीक हैं
def Spausdinti_Faile(duom, tarpai_kiek, simboliai_kiek):
with open("rez.txt", "w") as fout:
i = 0
for i in range(len(duom)):
fout.write(duom[i])
print(tarpai_kiek, simboliai_kiek)
i = 0
for i in range(len(duom)):
fout.write("{0} eilutė turi {1} tarpų simbolių ir {2}
simbolių.".format(str(i + 1), str(tarpai_kiek[i]),
str(simboliai_kiek[i])))
मुझे यह त्रुटि मिलती है:
2 जवाब
चूंकि आप विंडोज पर हैं, फाइलों के लिए डिफॉल्ट कैरेक्टर एन्कोडिंग है... कुछ सीमित।
आपकी भाषा के कुछ वर्णों को उस वर्ण एन्कोडिंग में प्रदर्शित नहीं किया जा सकता है, इसलिए आपको उस प्रभाव में एक त्रुटि मिलती है।
UTF-8 एन्कोडिंग के साथ फ़ाइल खोलें; यह किसी भी चरित्र का प्रतिनिधित्व कर सकता है:
with open("rez.txt", "w", encoding="UTF-8") as fout:
आप PYTHONUTF8=1
पर्यावरण चर भी सेट कर सकते हैं विंडोज़ पर यूटीएफ -8 के लिए पाइथन डिफ़ॉल्ट होने के लिए - यह पहले से ही अन्य प्लेटफॉर्म पर डिफ़ॉल्ट है।
@ AKX के अच्छे उत्तर के साथ, आप अपने कोड को बहुत सरल बना सकते हैं:
def Spausdinti_Faile(duom, tarpai_kiek, simboliai_kiek):
with open("rez.txt", "w", encoding="UTF-8") as fout:
fout.write(''.join(duom))
print(tarpai_kiek, simboliai_kiek)
for i, v in enumerate(duom):
fout.write(f"{i + 1} eilutė turi {tarpai_kiek[i]} tarpų simbolių ir {simboliai_kiek[i]} simbolių.")
अगर duom
में जरूरी नहीं कि केवल तार हों, तो fout.write(''.join(duom))
को fout.write(''.join(map(str, duom)))
में बदलें (इसे इंगित करने के लिए AKX का धन्यवाद)।
संबंधित सवाल
नए सवाल
python
पायथन एक बहु-प्रतिमान है, गतिशील रूप से टाइप किया हुआ, बहुउद्देशीय प्रोग्रामिंग भाषा है। यह एक साफ और एक समान वाक्यविन्यास सीखने, समझने और उपयोग करने के लिए त्वरित होने के लिए डिज़ाइन किया गया है। कृपया ध्यान दें कि अजगर 2 आधिकारिक तौर पर 01-01-2020 के समर्थन से बाहर है। फिर भी, संस्करण-विशिष्ट पायथन सवालों के लिए, [अजगर -२.०] या [अजगर -३.x] टैग जोड़ें। पायथन वेरिएंट (जैसे, ज्योथन, PyPy) या लाइब्रेरी (उदा।, पांडस और न्यूमपी) का उपयोग करते समय, कृपया इसे टैग में शामिल करें।