2011-06-27 2 views
14

में ई (वैज्ञानिक) नोटेशन में स्वचालित रूप से संख्याओं को संसाधित करें मैं एक द्रव्यमान स्पेक्ट्रोमीटर से डेटा फ़ाइलों में पढ़ रहा हूं और कई संख्याएं ई फॉर्म में हैं।पाइथन

4096.26 5.785e1 
4096.29 5.784e1 
4096.31 5.784e1 
4096.33 5.784e1 
4096.36 5.783e1 

मैं विभाजन समारोह का उपयोग कर दो नंबर बाहर निकलने के लिए योजना बना रहा हूँ, लेकिन मुझे पता है कि वहाँ एक समारोह अजगर तैरता में दूसरे स्तंभ कन्वर्ट करने के लिए है चाहता था? मैं जानता हूँ कि मैं नियमित अभिव्यक्ति के साथ यह कर सकता है, लेकिन सोचा था कि एक बेहतर तरीका

धन्यवाद हो सकता है

उत्तर

23

float() निर्माता e अंकन में तार को स्वीकार करेंगे:

>>> float("5.785e1") 
57.85 

तो आप बस map(float, line.split()) उपयोग कर सकते हैं एक पाठ लाइन को फ्लोट की सूची में बदलने के लिए।

+0

उत्कृष्ट धन्यवाद – Anake

+0

सबसे अच्छी बात जो मैंने कभी पाइथन के साथ देखी है – PatriceG