Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 将多个文本文件中的列与csv列文件中的列进行比较_Python_Text_Compare - Fatal编程技术网

Python 将多个文本文件中的列与csv列文件中的列进行比较

Python 将多个文本文件中的列与csv列文件中的列进行比较,python,text,compare,Python,Text,Compare,我在一个文件夹中有662个文本文件,为了打开它们,我使用了我在这里找到的代码: os = '..' path = './' for infile in glob.glob(os.path.join(path, '*.*')): print('current file is: ' + infile) 为了排除我使用的第一列: with open(infile) as infile: for line in infile: print(line.split()[0]

我在一个文件夹中有662个文本文件,为了打开它们,我使用了我在这里找到的代码:

os = '..'
path = './'
for infile in glob.glob(os.path.join(path, '*.*')):
    print('current file is: ' + infile)
为了排除我使用的第一列:

with open(infile) as infile:
    for line in infile:
        print(line.split()[0])
但这里的第一个问题是,它只提取最后一个文件的第一列,也不提取所有文件


第二个问题,我需要将这些列与csv文件中的第一列进行比较。。与pandas中的“in.index”选项相同(但它是csv vs.text)

它打印最后一个文件或所有文件,因为您在文件循环结束后打印列 它会打印第一列,因为你写了 line.split()[0]

你可以这样做

for infile in glob.glob(os.path.join(path, '*.*')):
  print('current file is: ' + infile)
  with open(infile) as infile:
      for line in infile:
         for i in range(len(line))
           print(line.split()[i])

我只是将所有代码放在一个循环和一个新循环中,以打印所有列

函数EXTRACT第一列在“for infle in glob.glob(os.path.join(path),”)”中,open(infle)作为infle:for line in infle:print(line.split()[0])中,我只需要第一列,是的,在放入循环后它就工作了,谢谢第二个问题是如何将csv文件(索引)的第一列与从文本文件(索引)中提取的第一列进行比较。如果有助于获取所有文件,请将答案标记为已批准的答案>>>>>>如果要获取第一列,请将split()[i]更改为split()[0]>>比较是什么意思?检查它是否相等?你不明白我的意思。我有一个文件,它不在这个文件夹中,我如何将它的第一列与“txt”文件中的第一列进行比较确定这另一个问题创建一个新的,我将帮助您并将我的答案标记为接受,如果它有助于您打印此文件夹中的所有文件谢谢,我想自己尝试一下,然后发布它