我在包含两列信息的文件夹中有多个文件:波数和强度:
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的新手并且对如何做到这一点彻底感到困惑,但它似乎在逻辑上很简单。
答案 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;
}