मैं पढ़ रहा हूँ एक पाठ फ़ाइल के साथ उच्च स्कोर खोजने की कोशिश कर रहा है, जो सूचकांक की स्ट्रिंग है जहां नाम बंद हो जाता है, और स्कोर शुरू होता है. इस फ़ाइल का स्वरूप:
John 15
bob 27
mary 72
videogameplayer99 99
guest 71
मैं ऐसा कैसे कर सकता?
मैं पढ़ रहा हूँ एक पाठ फ़ाइल के साथ उच्च स्कोर खोजने की कोशिश कर रहा है, जो सूचकांक की स्ट्रिंग है जहां नाम बंद हो जाता है, और स्कोर शुरू होता है. इस फ़ाइल का स्वरूप:
John 15
bob 27
mary 72
videogameplayer99 99
guest 71
मैं ऐसा कैसे कर सकता?
यदि आप देख रहे हैं खोजने के लिए सूचकांक करने के लिए स्ट्रिंग को विभाजित 2 अलग-अलग भागों में है, तो आप कर सकते हैं बस का उपयोग करें [string].split()
(जहां string
एक व्यक्ति लाइन). अगर आप की जरूरत है खोजने के लिए सूचकांक अंतरिक्ष के कुछ अन्य कारण के लिए, का उपयोग करें: [string].index(" ")
.
आप पट्टी कर सकते हैं लाइन के लिए अलग से इसे अंतरिक्ष. यह में परिणाम होगा की एक सूची से युक्त 2 'शब्द' लाइन में है, इस मामले में शब्दों के नाम होगा और स्कोर (स्ट्रिंग). आप इसे प्राप्त कर सकते हैं का उपयोग कर:
result = line.split()
name = result[0]
score = int(result[1])
इस मामले में, प्रत्येक पंक्ति के लिए, आप के लिए देख हो जाएगा सूचकांक, जहां आप पहली बार मिल अंतरिक्ष चरित्र " "
. अजगर में, आप को पूरा कर सकते हैं इस का उपयोग करके find
समारोह पर एक स्ट्रिंग है. उदाहरण के लिए, यदि आप एक स्ट्रिंग s = videogameplayer99 99
, तो s.find(" ")
वापस आ जाएगी `17'.
यदि आप इस विधि का उपयोग कर विभाजित करने के लिए एक नाम के एक नंबर से, मैं बजाय का उपयोग करने की सिफारिश split
समारोह जाएगा, जो विभाजन के एक स्ट्रिंग के आधार पर कुछ सीमांकक वर्ण. उदाहरण के लिए, s.split(" ") = ["videogameplayer99", "99"]
.