मैं जो दिखता है एक लॉग फ़ाइल, से एक स्वरूपित स्ट्रिंग है जैसे:पायथन: एक सीमांकक के 1 या अधिक घटनाओं से विभाजित
>>> a="test result"
यही है, परीक्षण और परिणाम कुछ रिक्त स्थान के आधार पर विभाजित कर रहे हैं - यह शायद स्वरूपित स्ट्रिंग का उपयोग करके बनाया गया था जो test
कुछ निरंतर अंतर प्रदान करता था।
सरल बंटवारे चाल से काम नहीं चलेगा:
>>> a.split(" ",1)
['test', ' result']
इस मदद की - लेकिन निश्चित रूप से, मैं वास्तव में जरूरत है::
>>> a.split(" ")
['test', '', '', '', ... '', '', '', '', '', '', '', '', '', '', '', 'result']
split(DELIMITER, COUNT)
कुछ अनावश्यक मूल्यों को मंजूरी दे दी
['test', 'result']
मैं split()
का उपयोग कर map
का उपयोग कर सकता हूं, लेकिन मुझे आश्चर्य हुआ कि क्या ऐसा करने के लिए एक और पाइथोनिक तरीका है।
धन्यवाद,
एडम
अद्यतन: इस तरह के एक सरल उपाय! आप सभी को धन्यवाद।
यह क्यों काम करता है: a.split (कोई नहीं) एक विशेष मामला है, जिसमें पायथन का अर्थ है "एक या अधिक सफेद जगहों पर विभाजित"। re.split() सामान्य मामला समाधान है। –
किसी को str.split (कोई नहीं, maxsplit) का उपयोग करने की आवश्यकता है क्योंकि फ़ंक्शन कीवर्ड तर्क स्वीकार नहीं करता है। मुझे आश्चर्य है क्योंकि। – tbrittoborges
सवाल था, कैसे delimiter + (एक या अधिक) के साथ विभाजित करने के लिए। आप जवाब दे रहे हैं कि किसी भी व्हाइटस्पेस को डिलीमीटर के रूप में लिया जाएगा, जो सही उत्तर नहीं है – Risinek