比较两个文件的单词数,并考虑单词出现次数。
创始人
2024-12-14 15:31:29
0

方法一:Python代码示例

import re

def count_words(filename):
    """统计文件中每个单词出现的次数"""
    with open(filename, encoding='utf-8') as f:
        text = f.read()
        words = re.findall(r'\w+', text.lower())
        return {word: words.count(word) for word in words}

def compare_word_counts(file1, file2):
    """比较两个文件的单词数,并考虑单词出现次数"""
    count1 = count_words(file1)
    count2 = count_words(file2)
    for word in set(count1.keys()) | set(count2.keys()):
        if word in count1 and word in count2:
            if count1[word] > count2[word]:
                print(f"{word}: {count1[word]} > {count2[word]}")
            elif count1[word] < count2[word]:
                print(f"{word}: {count1[word]} < {count2[word]}")
            else:
                print(f"{word}: {count1[word]} = {count2[word]}")
        elif word in count1:
            print(f"{word}: {count1[word]} > 0")
        else:
            print(f"{word}: 0 < {count2[word]}")

使用示例:

compare_word_counts('file1.txt', 'file2.txt')

方法二:Java代码示例

import java.io.File;
import java.io.FileNotFoundException;
import java.util.HashMap;
import java.util.Scanner;

public class CompareWordCounts {
    public static void main(String[] args) {
        String file1 = "file1.txt";
        String file2 = "file2.txt";

        HashMap count1 = countWords(file1);
        HashMap count2 = countWords(file2);

        for (String word : count1.keySet()) {
            if (count2.containsKey(word)) {
                int c1 = count1.get(word);
                int c2 = count2.get(word);
                if (c1 > c2) {
                    System.out.printf("%s: %d > %d%n", word, c1, c2);
                } else if (c1 < c2) {
                    System.out.printf("%s: %d < %d%n", word, c1, c2);
                } else {
                    System.out.printf("%s: %d = %d%n", word, c1, c2);
                }
                count2.remove(word);
            } else {
                int c1 = count1.get(word);
                System.out.printf("%s: %d > 0%n",

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...