从Python文件中读取单个字符?

2024-01-03

我的问题是,除了下面之外,是否还有其他方法可以一次一个字符地遍历文件?

with open(filename) as f:
  while True:
    c = f.read(1)
    if not c:
      print "End of file"
      break
    print "Read a character:", c

既然没有像Java中那样检查是否有东西要读取的函数,那么还有什么其他方法呢。另外,在示例中,当变量 c 到达文件末尾时,它会包含什么?感谢任何人的帮助。


另一种选择是使用itertools.chain.from_iterable() http://docs.python.org/library/itertools.html#itertools.chain.from_iterable:

import itertools

with open("test.txt") as f:
    for c in itertools.chain.from_iterable(f):
        print(c)

chain.from_iterable创建一个 iterable,它从给定 iterable 中的第一个 iterable 返回元素,直到耗尽,然后继续处理下一个 iterable,直到所有 iterable 都耗尽。通常,这用于展平列表的列表,但在这种情况下,它允许您忽略这些行。

这是否真的比嵌套循环更好是另一回事(它会快一点,但这不太重要),但值得一提。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

从Python文件中读取单个字符? 的相关文章

  • 在 Python 中处理单值元组的最佳实践是什么?

    我正在使用第三方库函数 它从文件中读取一组关键字 并且应该返回一个值的元组 只要有至少两个关键字 它就能正确执行此操作 但是 在只有一个关键字的情况下 它返回一个原始字符串 而不是大小为 1 的元组 这是特别有害的 因为当我尝试做类似的事情
  • Python - 包和设置文件

    我有一个 python 包 需要从我的项目目录中提取设置 这是我的项目当前的结构 Project bin mypackage package files Project myproject project files start py se
  • 如何在 pygame 中聚焦光线或如何仅绘制窗口的某些圆形部分?

    对于这一点 如果您熟悉它 请想想 超级马里奥制造2 中嘘关卡中的黑暗模式 我试图在角色周围创建一个圆形聚光灯 这也将使圆圈范围内的任何内容都可见 例如部分站在地板上 敌人或场景中的任何其他物体 我的计划是首先绘制圆圈 聚光灯 然后绘制场景
  • 地图与星图的性能?

    我试图对两个序列进行纯Python 没有外部依赖 逐元素比较 我的第一个解决方案是 list map operator eq seq1 seq2 然后我发现starmap函数来自itertools 这看起来和我很相似 但事实证明 在最坏的情
  • SMTPAuthenticationError: (535, b'5.7.8 用户名和密码在 Django 生产中不被接受?

    我在 Heroku 上部署了一个 Django 应用程序 在其中一节中 我使用 SMTP Gmail 设置向用户发送电子邮件 当我在本地运行项目时 电子邮件发送成功 但在 Heroku 上部署的项目上却发送失败 我在 Stackoverfl
  • 将列表传递给 PyCrypto 中的 AES 密钥生成器

    我尝试使用 Pycrypto 生成 AES 密钥 但收到以下错误 类型错误 列表 不支持缓冲区接口 对于以下声明 aescipher AES new mykey AES MODE ECB mykey 属于类型list并包含 18854347
  • ValueError:在 R 中使用 keras 模型时在用户代码中

    我正在尝试使用 R 在 R 中运行一维 CNNkeras包裹 我正在使用以下代码 library MASS library keras Create some data data Boston data lt Boston create a
  • 使用子图绘制 pandas 数据框 (subplots=True):放置图例并使用紧凑的布局

    我真的很喜欢 pandas 来处理和分析大数据集 到目前为止 我主要使用 matplotlib 进行绘图 但现在想使用 pandas 自己的绘图功能 基于 matplotlib 因为它需要更少的代码 并且在大多数情况下对我来说似乎足够了 尤
  • 如何抑制 pyinstaller 生成的可执行文件窗口中的所有警告

    我已经使用 pyinstaller 从 python 文件生成了可执行文件 该程序按其应有的方式工作 但在我想隐藏的窗口中出现了一条警告消息 当 python 文件在 IDE 中运行时 以下行会抑制所有警告消息 warnings filte
  • 为图例中的点设置固定大小

    我正在制作一些散点图 我想将图例中的点的大小设置为固定的相等值 现在我有这个 import matplotlib pyplot as plt import numpy as np def rand data return np random
  • 尝试修复我的功能

    我正在开发一个函数 我必须返回一个元组 其中第一个参数是最大数字的 str 第二个参数是 int 列表 这是示例以及我为该函数编写的内容 投票 G G N G C G 1 3 0 1 您必须将最大值的位置映射到正确的一方 parties N
  • 具有条件的重复行 pandas dataframe python

    我的数据框有问题 我的 df 是 product power brand product 1 3 x 1500W brand A product 2 2x1000W 1x100W product 3 1x1500W 1x500W brand
  • Tornado websocket handler , self.close() 正在关闭连接而不触发 on_close() 方法

    我是 python stackoverflow tornado 的新手 所以请耐心等待 纠正我 我正在使用龙卷风开发实时应用程序 当我在 Websocket 处理程序类中调用 self close 时 on close 方法不会启动 这次我
  • 从 sublime_plugin.WindowCommand 获取当前文件名

    我开发插件sublime text 3 并想要获取当前打开的文件路径 absolute1 self window view file name 在哪里self is sublime plugin WindowCommand 但失败了 Att
  • 检测图像是否损坏或损坏

    我需要以编程方式检查用户在我的应用程序上选择作为壁纸的图像是否已损坏或损坏 基本上我为用户提供了选择自己的图像作为壁纸的选项 现在 当图像加载时 我只想检查它是否已损坏 如果您正在寻找 PHP 解决方案而不是 javascript 解决方案
  • sklearn 中带有词袋和附加情感特征的文本分类器

    我正在尝试构建一个分类器 除了词袋之外 还使用情绪或主题 LDA 结果 等特征 我有一个包含文本和标签的 pandas DataFrame 并且想添加情感值 5 到 5 之间的数字 和 LDA 分析结果 带有句子主题的字符串 我有一个工作词
  • 安排 Asyncio 任务每 X 秒执行一次?

    我正在尝试创建一个 python 不和谐机器人 它将每隔 X 秒检查一次活跃会员 并根据会员的在线时间奖励积分 我正在使用 asyncio 来处理聊天命令 这一切都正常 我的问题是找到一种方法来安排每隔 X 秒异步检查一次活动成员 我已经阅
  • 用于桌面数据库应用程序的 Python 框架

    是否有一个框架可以为Python开发桌面数据库应用程序 一些带有CRUD屏幕的屏幕 我正在寻找类似于 Windows 窗体的东西 能够将 TextField Combos 和其他 UI 隐喻与datasets连接到关系数据库例如 MySQL
  • Tensorflow ctc_loss_calculator:找不到有效路径

    当运行我的神经网络 双向 LSTM 进行音频识别时 我使用连接主义时间分类 CTC 但在某些时候 训练网络时我几乎每批都会收到来自 Tensorflow 的警告 W tensorflow core util ctc ctc loss cal
  • PyQt QFileDialog exec_ 很慢

    我正在使用自定义QFileDialog因为我想选择多个目录 但是exec 功能非常慢 我不明白为什么 我正在使用最新版本的 PyQt 代码片段 from PyQt4 import QtGui QtCore QtNetwork uic cla

随机推荐

  • echo -e 在 Windows 中等效吗?

    Windows 中是否有等效的 Linux echo e 以便我可以使用 echo e xnnn 打印出 ASCII 代码为十六进制值 nnn 的字符 没有等效的函数 但您可以编写自己的函数 我会把问题分成两部分 将十六进制数转换为十进制数
  • 阻止备份到 iCloud,以下代码正确吗?

    我正在下载许多音频和视频文件并将它们存储在我的主目录中 现在我想 阻止备份到 iCloud 所以我为每个文件的网址添加了以下代码 BOOL addSkipBackupAttributeToItemAtURL NSURL URL const
  • 如何使用 CSP(内容安全策略)将 WebForms 项目中动态创建的脚本列入白名单?

    是否有一种安全的方法可以使用 CSP 内容安全策略 将 WebForms 项目中动态创建的脚本列入白名单 Using unsafe inline如下所示 它可以工作 但不推荐 context Response Headers Append
  • 如何在 SwiftUI 中对表行使用 Transferable

    在 WWDC 2022 上 Apple 推出了可转让 https developer apple com documentation CoreTransferable Transferable changes 3协议以简单的方式支持拖放操作
  • Swift Equatable 协议

    我正在阅读 Swift 教程 https www raywenderlich com 125311 make game like candy crush spritekit swift part 1 https www raywenderl
  • 使用 QGraphicsObject 与 QGraphicsItem 的惩罚?

    我目前有一个基于 QGraphicsItem 的项目层次结构 我想改为使用 QGraphicsObject 以便可以在我的项目上添加属性 我不会使用 QObject 的信号 槽或任何其他功能 我被告知你不应该从 QObject 派生 因为它
  • 在画布上播放视频并保留画布上的最后一帧/图像

    我使用以下脚本代码在画布上绘制视频 vPlayer on play function e var canvas canvas 0 var ctx canvas getContext 2d var this this canvas width
  • 如何在 F# 中启用 WinForms 或 WPF 项目?

    我安装了最新版本的 Visual Studio 2017 我选择了F 语言支持和F 桌面支持 重新启动并转到 文件 gt 新建项目 后 我希望看到一个为 F 启动新的 WPF 或 WinForms 项目的选项 但我没有任何此类选项 只有控制
  • 将 pandas 数据框转换为唯一元组列表

    将 pandas 数据框转换为唯一元组列表的最有效方法是什么 在下面的代码中 我尝试提取包含所有唯一的元组列表PostalCode and Age from typing import NamedTuple Sequence Tuple i
  • Boost::通过 id 处理子进程

    如何在 on exit 函数中获取 child id bp child c args ios bp on exit int e std error code ec result e ios stop need c id 或者如果孩子正在按
  • 你能告诉我如何用正则表达式替换吗

    你能告诉我如何用 preg replace 替换字符串吗 需要正则表达式 user parent id action step 1 在数组的等效值处 array parent id gt 32 action gt some To make
  • RxJS:Observable.never() 保持订阅状态

    我正在使用 rxjs 5 5 6 我创建了这段代码来展示该行为 Observable of 1 2 do a gt console log a let d string null let r d length it raises an nu
  • Android Studio 重复文件

    我的源代码中出现重复的文件 这种情况在 Android Studio 中经常发生 并且所有类型的文件都会发生这种情况 而不仅仅是 gradle 文件 当我签出新分支或切换分支时 通常会发生这种情况 造成这种情况的原因是什么以及如何预防 请注
  • 如何将字符串转换为 JavaScript 函数调用? [复制]

    这个问题在这里已经有答案了 我得到一个像这样的字符串 settings functionName t parentNode id 我想将其转换为函数调用 如下所示 clickedOnItem IdofParent 当然 这必须在 JavaS
  • 如何为 RestController 启用 GZIP? [复制]

    这个问题在这里已经有答案了 我有一个简单的REST控制器使用spring 返回的GZIP响应如何application xml流是否启用 RestController public class MyRest RequestMapping m
  • foreach my $var (@list) -- $var 是一个引用?

    所以 我从来不知道这一点 我想得到一些澄清 我知道如果你这样做 foreach list 如果您在该循环中更改 它将影响实际数据 但是 我不知道如果你这样做 foreach my var1 list 如果您在循环中更改 var1 它将更改实
  • 在 smarty 模板中创建数组? [复制]

    这个问题在这里已经有答案了 我需要从 smarty 模板中的其他一维数组创建一个新数组 那么 在模板文件中创建数组的最佳可能性是什么 谢谢 萨钦 Smarty3 让您 var foo gt bar sub gt 1 2 3 and var
  • Ruby 中 $$ 的含义是什么?

    irb main 002 0 gt gt 5052 是什么意思 在 Ruby 中以及如何 在哪里使用它 is the 进程号 http www opengroup org onlinepubs 9699919799 functions ge
  • HeapTaskDaemon 线程阻塞的 ANR

    我的 Android 应用程序出现 ANR 错误 跟踪显示只有一个线程处于阻塞状态 所有其他线程都处于等待 睡眠 本机状态 因此它似乎并未处于死锁状态 我手动 直接 启动了两个线程 因此我大致知道 ANR 发生在应用程序的哪个部分 不幸的是
  • 从Python文件中读取单个字符?

    我的问题是 除了下面之外 是否还有其他方法可以一次一个字符地遍历文件 with open filename as f while True c f read 1 if not c print End of file break print