使用python查找txt文件中字母出现的次数

2024-05-23

我需要从 .txt 文件中读取该字母并打印 txt 文件中出现的次数。到目前为止,我已经能够在一行中打印内容,但计数有问题,有人可以指导吗?

infile = open('grades.txt')  
content = infile.read() 
for char in content:
        print (char, end=' ')

这将从 txt 文件中读取该字母,但我无法计算出现次数。

使用下面的计数器给我 1

print (char.counter(char))

您可以使用collections.Counter https://docs.python.org/3/library/collections.html#collections.Counter为了这

with open('grades.txt') as f:
    print(Counter(f.read()))

Example

这是一个有字母的测试

Output

Counter({'t': 7,
         ' ': 6,
         's': 5,
         'a': 3,
         'h': 3,
         'e': 3,
         'i': 2,
         'l': 1,
         'r': 1})

或者只包含字母

from string import ascii_letters
with open('grades.txt') as f:
    print(Counter(i for i in f.read() if i in ascii_letters))

Edit
无需使用任何其他库,手动方式即可完成与上述相同的操作:

from string import ascii_letters
d = {}
with open('grades.txt') as f:
    for letter in d.read():
        if letter in ascii_letters:
            if letter in d:
                d[letter] += 1
            else:
                d[letter] = 1

如果你的文件看起来像

A A+ B B- B B+ B+ A A- B+

那么对上面的代码进行修改就是

d = {}
with open('grades.txt') as f:
    for grade in d.read().split():
        if grade in d:
            d[grade] += 1
        else:
            d[grade] = 1
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用python查找txt文件中字母出现的次数 的相关文章

随机推荐

  • Internet Explorer 和 Firefox 上的 YouTube IFrame API

    更多的是 答案 而不是 问题 但在其他地方没有找到这个 所以我将其发布在这里 我在所有版本的 IE 和 Firefox 中初始化 iFrame API 时遇到困难 需要进行一些自定义实现 基本上 它会加载 API 但不会创建玩家对象 经过一
  • 删除优先级队列的尾部元素

    如何删除优先级队列的尾部元素 我正在尝试使用优先级队列实现波束搜索 一旦优先级队列已满 我想删除最后一个元素 优先级最低的元素 Thanks 没有简单的方法 将元素从原始元素复制到新元素 最后一个除外 PriorityQueue remov
  • JS文件中的System.register是什么意思?

    在 Angular 2 中使用指令时 JS 文件中的 System register 是什么意思 我认为这个问题并不特定于 Angular2 中的指令 它是关于 ES6 TypeScript 和其他使用 SystemJS 的现代编译器的一般
  • Flutter:什么时候应该使用工厂构造函数?

    https flutter dev docs cookbook networking fetch data https flutter dev docs cookbook networking fetch data 在上一页的最后一个 完整
  • 此 TypeError 消息中提到的“代码对象”是什么?

    在尝试使用Python时exec声明 我收到以下错误 TypeError exec arg 1 must be a string file or code object 我不想传递字符串或文件 但什么是代码对象 如何创建一个 创建代码对象的
  • 想要使用飞碟生成风景pdf

    我有下面给出的 html 当我使用飞碟将其转换为 PDF 时 它不适合 A4 纵向尺寸 如何生成横向pdf文件 table border 1 style color black font size 12px tr td a href a t
  • 使用第三方库记录来自 PHP 应用程序的所有 cURL 请求

    好吧 我的 PHP Yii2 应用程序遇到了困难 我需要记录来自应用程序的每个传入和传出请求 传入的请求可以轻松地记录在 PHP 本身中 在引导阶段添加一些处理程序 这很容易 但真正的问题是我正在使用许多第三方库 即 Amazon MWS
  • 埃拉托色尼筛法 - 实现返回一些非质数值?

    我用 Java 实现了埃拉托斯特尼筛法 通过伪代码 public static void sieveofEratosthenes int n boolean numArray numArray new boolean n for int i
  • 显示带有跨越 180 条经线的传单的 GeoJSON

    我正在尝试显示跨越第 180 条子午线的 geoJSON 对象 在本例中为俄罗斯的轮廓 目前 该国家 地区的一部分显示在地图的左侧 一部分显示在右侧 看看传单 似乎有一个解决方案 但这似乎不起作用 https github com Leaf
  • Primeng DataTable Dropdown 不适用于通过列的选项

    我正在基于 PrimeNG 的 DataTable 为我的应用程序制作一个可重用的表组件 我的组件有以下 html 代码
  • 从 MS Access 中提取 OLE 对象(Word 文档)

    我有一个 Microsoft Access 数据库 其中包含一个包含 Microsoft Word 文档的 OLE 对象字段 我试图找到代码来检索保存在 OLE 对象中的文件 以便用户可以从我的 JavaFx 应用程序中的按钮下载它 但没有
  • 如何在 Windows 中创建上下文菜单子菜单?

    我一直在编写实用程序并通过 Shell 键 上的 Regedit 将它们映射到上下文菜单 但我不知道如何像一些更流行的实用程序那样创建子菜单 例如 如果我有三个脚本将文件移动和重命名到三个不同的文件夹 那么现在我有三个不同的上下文菜单条目
  • 每n秒执行一次函数

    我制作了这个在 10 秒后点击链接的代码片段 function timeout window setTimeout function img left click 1000 setTimeout timeout 1000 timeout 我
  • Logback:SizeAndTimeBasedRollingPolicy 不遵守totalSizeCap

    我正在尝试以一种方式管理我的日志记录 一旦达到总累积大小限制或达到最大历史记录限制 我最旧的存档日志文件就会被删除 当使用SizeAndTimeBasedRollingPolicy在 Logback 1 1 7 中 滚动文件追加器将继续创建
  • 在 C 中使用“const”,可能会导致什么移植问题?

    我想在 C 接口函数中使用 const 来注意某些 char 参数不会被函数修改 将此代码移植到各个平台时可能会造成什么麻烦 C 代码中对 const 的支持相当标准吗 这什么时候正式成为 C 标准的 我无法想象const不受任何编译器支持
  • 从文本文件中删除特定字符

    我对 Python 和编码都很陌生 我当时正在做一个小项目 但遇到了一个问题 44 1 6 23 2 7 49 2 3 53 2 1 68 1 6 71 2 7 我只需要从每行中删除第三个和第六个字符 或者更具体地说 从整个文件中删除 字符
  • 如何禁用操作栏上“向上”按钮的翻转?

    背景 我做了一个 应用程序管理器 https play google com store apps details id com lb app manager 替代应用程序 我希望添加 RTL 从右到左 语言的翻译 因为我知道在某些 And
  • 在 Cordova 中合并文件的多个部分

    在我的 Cordova 应用程序中 我正在下载任意文件 例如图像或视频文件 这是通过 Cordova 文件传输插件和 Range 标头完成的 因为我需要分段下载文件 我的问题是 我想将几 个小 字节 文件合并回原来的文件中 他们曾经在其中使
  • 在 Struts 2 中传递 URL 参数而不使用查询字符串

    我想使用类似的 URL host ActionName 123 abc 而不是像这样传递查询字符串 host ActionName parm1 123 parm2 abc 我怎样才能在 Struts 2 中做到这一点 我按照下面的方法做了
  • 使用python查找txt文件中字母出现的次数

    我需要从 txt 文件中读取该字母并打印 txt 文件中出现的次数 到目前为止 我已经能够在一行中打印内容 但计数有问题 有人可以指导吗 infile open grades txt content infile read for char