迭代和比较txt文件python中的值

时间:2016-06-27 19:23:21

标签: python loops io comparison iteration

我在包含两列信息的文件夹中有多个文件:波数和强度:

500.21506 0.01093
500.45613 0.02135
500.69720 0.01043
500.93826 0.01997
501.17933 0.01335
501.42040 0.01579
501.66147 0.01749
501.90253 0.01256
502.14360 0.02054
502.38467 0.01011
502.62574 0.02108
502.86680 0.01132
503.10787 0.01854

我需要我的代码逐行读取每个文件,如果波数在预设的lowwavenumber和highwavenumber之间,则写出与这些波数相关的强度。现在我有这个:

with open(files[count], 'r') as g:
    for line in g:
        parts = map(float, line.split())
        if parts[0] >= lowwav and parts[0] <= highwav:
            f.write(parts[1])
            f.write('\n')
        else: break

当我命令打印parts[0](txt文件中的波数)或打印parts[1](txt文件中的强度)时,它仅打印文件夹最后一个文件中的第一个波数和第一个强度。

我是python的新手并且对如何做到这一点彻底感到困惑,但它似乎在逻辑上很简单。

1 个答案:

答案 0 :(得分:0)

这适用于任何文本文件。您可以阅读有关阅读数据here

的更多信息
FolderBrowser browser = new FolderBrowser();
browser.Title = "Browse folder";
browser.Flags = BrowseFlags.BIF_NEWDIALOGSTYLE |    BrowseFlags.BIF_NONEWFOLDERBUTTON;
browser.InitDir = Application.StartupPath; // <-- Start path

if (browser.ShowDialog() == DialogResult.OK)
{
    string selectedDirectory = browser.DirectoryPath;
}