【问题标题】:I want to compare values of two files csv or txt我想比较两个文件 csv 或 txt 的值
【发布时间】:2019-05-01 12:46:08
【问题描述】:

我想比较文件中的两个值,就像两个文件都有年龄变量一样。如果 file1 中的 age 具有常数值 16,则应与间隔 15-20 中的 file2 年龄进行比较以满足条件为真。

到目前为止已经尝试过了。它比较了行,但我需要比较年龄间隔,如 file1 年龄为 15,因此应与 file2 年龄从 15 到 20 进行比较。

     filename1 = "/home/pi/desktop/detect.txt"
     filename2 = "/media/pi/KINGSTON/config.txt"


     with open(filename1) as f1:
        with open(filename2) as f2:
           file1list = f1.read().splitlines()
           file2list = f2.read().splitlines()
           list1length = len(file1list)
           list2length = len(file2list)
           if list1length == list2length:
               for index in range(len(file1list)):
                   if file1list[index] == file2list[index]:
                       print(file1list[index] + "==" + file2list[index])
                   else:                  
                       print(file1list[index] + "!=" + file2list[index]+" Not
                                                                   Equel")
            else:
                print("difference inthe size of the file and number of 
                                                                   lines")

【问题讨论】:

  • 到目前为止你尝试了什么?
  • 你的示例代码写到一定程度了吗?!
  • 请检查我用来按文件行比较输出的代码。
  • 我建议在每个文件中包含一些行(或组成与真实数据共享相关细节的数据)

标签: python file csv


【解决方案1】:

您需要从相应文件中获取每个值并进行比较。

Here 是有关如何使用 Python 从 .csv 文件中读取值的链接,here 是有关如何从 .t​​xt 文件中读取值的链接。如果您只是在两个单独的文本文件中存储一个奇异值,那么您可以像这样简单地使用 Python 的 open() 和 read() 函数:

file = open('filename','r')
file_contents = file.read()

Here's 另一个链接以获取有关 .read() 函数的更多信息。

请在您下次提问时提供更多信息和上下文,以便我们提供更好的答案:)。

【讨论】:

  • @Shadabkhan 你得到了什么输出?另外,我不确定这是否只是您发布代码的方式,但那里有很多缩进错误。
  • 我删除了缩进错误。此代码将两个 txt 文件完美地与行进行比较。但我的问题是比较两个值。
  • 您的文本文件的结构如何?可以举个例子吗?