पायथन लेखन zlib संकुचित डेटा - पायथन, फ़ाइल, सॉर्टिंग, संपीड़न, zlib

हमारे द्वारा उपयोग किए जाने से पहले वर्तमान कोड मैं उपयोग कर रहा हूं:

with open(classFileName,"a+"): as openFile
fileData = openFile.readlines()
try:
fileData = zlib.decompress(str(fileData))
except:
pass

with open(classFileName,"a+") as openFile:
openFile.write(fileData)

with open(classFileName,"a+") as openFile:
fileData = []
fileData = openFile.readlines()
fileData.append(mergedData)

fileData = sorted((a.strip().split() for a in fileData),key=operator.itemgetter(1))
fileData = os.linesep.join(p[0] + " " + p[1] for p in fileData)

fileData = str(fileData)
zlib.compress(fileData)

with open(classFileName,"w") as openFile:
openFile.write(fileData)

हालाँकि यह वास्तव में एक त्रुटि कहती है कि उस अंतिम पंक्ति पर एक चरित्र बफर ऑब्जेक्ट की उम्मीद है।

An example of the file is as shown:

रीस ५
जॉन 7
एलेक्स २

Any suggestions or help? I want to compress to reduce manipulating the scores. It looks better for the reason I am doing it don"t worry about the reasons.

उत्तर:

जवाब के लिए 0 № 1

पाइथन में स्ट्रिंग्स "टी बदली जा सकती हैं (न ही बाइट ऑब्जेक्ट्स) - इसलिए, कोई भी डॉक्टर की ओर देखे बिना भी उसे संक्रमित कर सकता है, zlib.compress "अपने को संशोधित नहीं कर सकता fileData{ जगह में। उपरोक्त स्निपेट केवल मूल फ़ाइलडेटा को रिकॉर्ड करता है।

से दस्तावेज़ीकरण:

zlib.compress(string[, level]) स्ट्रिंग में डेटा को संपीड़ित करता है, एक स्ट्रिंग लौट रहा हैसम्‍मिलित डेटा सम्‍मिलित है। स्तर एक पूर्णांक है 0 से 9 संपीड़न के स्तर को नियंत्रित करना; 1 सबसे तेज़ और उत्पादन होता है सबसे कम संपीड़न, 9 सबसे धीमा है और सबसे अधिक उत्पादन करता है। 0 नहीं है संपीड़न। डिफ़ॉल्ट मान 6. है यदि कोई हो तो त्रुटि अपवाद उठाता है त्रुटि होती है।

इसलिए,

 fileData = zlib.compress(fileData)

आपके लिए काम करना चाहिए


संबंधित सवाल
सबसे लोकप्रिय