के साथ एक CSV प्रारूप है या नहीं, क्या कोई यह जांचने का एक प्रभावी तरीका प्रदान कर सकता है कि फ़ाइल में पाइथन का उपयोग करके CSV प्रारूप है या नहीं?जांचें कि फ़ाइल में पाइथन
उत्तर
पायथन के पास csv module है, इसलिए आप इसे विभिन्न बोलीभाषाओं के तहत पार्स करने का प्रयास कर सकते हैं।
आपको सीएसवी फ़ाइल पर विचार करने के बारे में स्पष्ट रूप से सोचने की आवश्यकता है।
उदाहरण के लिए, अल्पविरामों के बीच किस तरह के पात्र हो सकते हैं। क्या यह केवल पाठ है? क्या यह यूनिकोड वर्ण भी हो सकता है? क्या प्रत्येक पंक्ति में अल्पविराम की समान संख्या होनी चाहिए?
एक CSV फ़ाइल की कोई सख्त परिभाषा नहीं है जिसे मैं जानता हूं। आम तौर पर यह एएससीआईआईआई पाठ को अल्पविराम से अलग करता है और प्रत्येक पंक्ति में समान संख्या में अल्पविराम होते हैं और आपके प्लेटफ़ॉर्म के लाइन टर्मिनेटर द्वारा समाप्त किया जाता है।
वैसे भी, एक बार जब आप उपरोक्त प्रश्नों का उत्तर देते हैं तो आप यह जानने के तरीके से थोड़ा आगे होंगे कि फ़ाइल को CSV फ़ाइल कब पता चलाना है।
आप निम्न की तरह कुछ कोशिश कर सकते हैं, लेकिन सिर्फ इसलिए कि आपको csv.Sniffer
से बोलीभाषा मिलती है, वास्तव में आपके पास एक वैध CSV दस्तावेज़ होने की गारंटी के लिए पर्याप्त नहीं होगा।
csv_fileh = open(somefile, 'rb')
try:
dialect = csv.Sniffer().sniff(csv_fileh.read(1024))
# Perform various checks on the dialect (e.g., lineseparator,
# delimiter) to make sure it's sane
# Don't forget to reset the read position back to the start of
# the file before reading any entries.
csv_fileh.seek(0)
except csv.Error:
# File appears not to be in CSV format; move along
* "... गारंटी के लिए पर्याप्त नहीं होगा ..." *: हाँ। बोलीभाषा प्रदान किए बिना, मैंने एक .ZIP को वैध सीएसवी के रूप में पाया, @ सेपरेटर के रूप में – alanjds
इसे सीएसवी के रूप में पार्स करने का प्रयास करें और देखें कि आपको कोई त्रुटि है या नहीं।
- 1. जांचें कि फ़ाइल पाइथन
- 2. जांचें कि क्या पाइथन
- 3. जांचें कि एक * प्रकार * फ़ाइल पाइथन
- 4. जांचें कि पाइथन
- 5. जांचें कि पथ पाइथन
- 6. जांचें कि कोई निर्देशिका ज़िप फ़ाइल में पाइथन
- 7. जांचें कि कोई संख्या पाइथन
- 8. जांचें कि सेट में मान पाइथन
- 9. जांचें कि क्या पाइथन (लिनक्स/यूनिक्स में)
- 10. कैसे जांचें कि सूची में केवल पाइथन
- 11. जांचें कि फ़ाइल
- 12. जांचें कि फ़ाइल ksh
- 13. जांचें कि बैच फ़ाइल
- 14. जांचें कि फ़ाइल
- 15. जांचें कि फ़ाइल php
- 16. जांचें कि कोई फ़ाइल Yii
- 17. जांचें कि कोई फ़ाइल वाइल्डकार्ड
- 18. जांचें कि क्या पाइथन int फ्लोट
- 19. PHP जांचें कि फ़ाइल उपयोग में है
- 20. PHP जांचें कि फ़ाइल में स्ट्रिंग
- 21. जांचें कि क्या पाइथन पैकेज स्थापित है
- 22. जांचें कि क्या पाइथन में बड़ी सूची बदल गई है
- 23. कैसे जांचें कि ओएस विस्टा पाइथन में है या नहीं?
- 24. जांचें कि स्ट्रिंग में
- 25. जांचें कि फ़ाइल पाइथन में नामित पाइप (फीफो) है या नहीं?
- 26. जांचें कि फ़ाइल मौजूद है या नहीं,
- 27. जांचें कि फ़ाइल एचटीएमएल 5 फाइल एपीआई
- 28. जांचें कि क्या NSURL स्थानीय फ़ाइल है
- 29. बैश: जांचें कि क्या दूरस्थ फ़ाइल स्कैन
- 30. जांचें कि क्या दूरस्थ फ़ाइल PHP
स्टैक ओवरफ्लो में आपका स्वागत है। आपका प्रश्न अधिक जानकारी का उपयोग कर सकता है। एक स्टार्टर के रूप में, क्या आप कृपया "सीएसवी प्रारूप" से क्या मतलब है परिभाषित कर सकते हैं? आपको इस प्रारूप को ध्यान से परिभाषित करने की आवश्यकता होगी। क्या इस प्रारूप में बचने वाले पात्र, टिप्पणी मार्कर, या उद्धरण वर्ण मौजूद हैं? यदि यह प्रश्न गृहकार्य है, तो कृपया "होमवर्क" नामक एक टैग जोड़ें ताकि प्रतिक्रिया आपको सही प्रकार का मार्गदर्शन दे सके। –
मेरा मतलब सीएसवी फ़ाइल पर अल्पविराम से अलग मूल्य फ़ाइल अधिक जानकारी के लिए http://en.wikipedia.org/wiki/Comma-separated_values देखें। – Joe
यदि सीएसवी 'अल्पविराम से अलग मूल्य' का मतलब है, तो उस प्रारूप का कोई स्टैंडआउट नहीं है। – Max