簡體   English   中英

如何從python中的文本文件中獲取浮點數?

[英]How to get floats from text file in python?

嗨,我是python的新手,並且我有一個具有以下結構的文本文件.txt:

Text1     31332.22342
Text2     293023.32323
Text3     32332.32323

將這些數字放入數組的最簡單方法是什么? 干杯!

您可以讀取文件並將其拆分為一個列表,然后遍歷該列表並嘗試轉換為浮點數,如果成功,則將其添加到浮點數列表中。 如下所示:

    with open('file.txt', 'r') as f:
        data = f.read().split()
        floats = []
        for elem in data:
            try:
                floats.append(float(elem))
            except ValueError:
                pass
        print floats

輸出:

[31332.22342, 293023.32323, 32332.32323]

您還可以使用numpy genfromtxt函數。 像這樣的東西:

text_file.txt

Text1     31332.22342
Text2     293023.32323
Text3     32332.32323

蟒蛇殼

>>> import numpy as np
>>> numbers = np.genfromtxt('text_file.txt', usecols=1 )

輸出

[  31332.22342  293023.32323   32332.32323]

要對您的數據類型進行屬性驗證,請嘗試以下操作:

import numpy as np
data = np.genfromtxt("test.txt", usecols=1, dtype=float)

輸出:

[  31332.22342  293023.32323   32332.32323]

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM