读取文件直到Python中的特定字符

2023-11-21

我目前正在开发一个应用程序,该应用程序需要从文件中读取所有输入,直到遇到某个字符。

通过使用代码:

file=open("Questions.txt",'r')
c=file.readlines()
c=[x.strip() for x in c]

每次脱衣相遇\n,它从输入中删除并被视为列表中的字符串c.

这意味着每一行都被分成列表的一部分c. But 我想在遇到特殊字符时列出一个列表像这样:

如果输入文件包含以下内容:

1.Hai
2.Bye\-1
3.Hello
4.OAPd\-1

然后我想得到一个列表c=['1.Hai\n2.Bye','3.Hello\n4.OApd']

请帮我做这件事。


最简单的方法是将文件作为单个字符串读取,然后将其拆分为分隔符:

with open('myFileName') as myFile:
  text = myFile.read()
result = text.split(separator)  # use your \-1 (whatever that means) here

如果您的文件非常大,请将完整内容作为单个字符串保存在内存中以供使用.split()可能是不可取的(然后在拆分后将完整内容保留在列表中可能也是不可取的)。然后你可以分块阅读:

def each_chunk(stream, separator):
  buffer = ''
  while True:  # until EOF
    chunk = stream.read(CHUNK_SIZE)  # I propose 4096 or so
    if not chunk:  # EOF?
      yield buffer
      break
    buffer += chunk
    while True:  # until no separator is found
      try:
        part, buffer = buffer.split(separator, 1)
      except ValueError:
        break
      else:
        yield part

with open('myFileName') as myFile:
  for chunk in each_chunk(myFile, separator='\\-1\n'):
    print(chunk)  # not holding in memory, but printing chunk by chunk
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

读取文件直到Python中的特定字符 的相关文章

随机推荐

  • 如何使 RadioButton 的项目符号顶部对齐?

    我有一个多行单选按钮 我希望项目符号位于内容的左侧 默认情况下 与单选按钮控件的顶部对齐 在 XAML 中执行此操作的最简单方法是什么 Note 一定要检查一下雷切尔的回答 她将这一阶段进一步转化为通用模板 首先 不要浪费时间Vertica
  • 为什么数组常量只能在初始值设定项中使用? [复制]

    这个问题在这里已经有答案了 可能的重复 数组常量只能在初始化器中使用错误 我正在研究数组 并通过这种在一行中声明和初始化数组的快捷方法来实现 例如 int a 1 2 3 4 5 但是当我尝试执行以下代码时 我收到此编译器错误 提示 数组常
  • Objective-c NSFilePosixPermissions 到人类可读的 NSString

    有没有办法从 NSFilePosixPermissions 整数获取人类可读的字符串 例如 drwxr xr x 文件系统权限属性只是一个无符号长整型值 下面的代码显然可以变得更高效 但它 或多或少 显示了需要做什么才能获得您想要的字符串
  • 使用 jpackage 实用程序进行代码签名+公证在 macOS 上不起作用

    对于某些上下文 我使用 jpackage 实用程序尝试创建签名的 DMG 文件以交付给我的用户 我需要签署此 DMG 的原因是我想对该软件进行公证 顺便说一句 我不确定是否可以使用 jpackage 进行公证 但无论如何我正在尝试 但是 我
  • 通过弱指针对块中的 ivar 进行赋值

    我有一个只读属性isFinished在我的界面文件中 typedef void MyFinishedBlock BOOL success NSError e interface TMSyncBase NSObject BOOL isFini
  • UISearchbar 的“取消”按钮的图像[重复]

    这个问题在这里已经有答案了 可能的重复 设置 UISearchBar 中取消按钮的样式 我正在尝试为搜索栏设置图像 我可以使用搜索栏的子视图为搜索栏设置图像UISearchBarBackground 但我无法为搜索栏的取消按钮设置图像 我得
  • 由 IIS 提供服务时,Fontawesome 无法工作

    当我将应用程序放在 IIS7 服务器上时 FontAwesome 对我不起作用 在 Firefox 中 请求的 URL 被编码为http l2etest kema intra fonts fontawesome webfont ttf 3F
  • Spring RESTTemplate 的泛型

    我有一堂这样的课 public class Wrapper
  • Python Pandas 复制数据框中的行

    如果数据框看起来像 Store Dept Date Weekly Sales IsHoliday 1 1 2010 02 05 24924 5 FALSE 1 1 2010 02 12 46039 49 TRUE 1 1 2010 02 1
  • 使用 SafeNet eToken 自动进行扩展验证 (EV) 代码签名

    我们最近购买了 DigiCert EV 代码签名证书 我们可以使用signtool exe 对 exe 文件进行签名 但是 每次我们签署文件时 它都会提示输入 SafeNet eToken 密码 我们如何通过在某处存储 缓存密码来自动化此过
  • Android中位图压缩后如何保存Exif数据

    按照相机意图拍摄照片后 我压缩位图以减小文件大小 问题是压缩后 它会丢失所有 EXIF 数据 我检索原始 EXIF 数据没有问题 但是 如何在压缩后将此 EXIFF 数据添加到字节数组中 我的猜测是采用字节数组并创建它的位图 然后添加旧的
  • jQuery 1.9.0 破坏 $.attrFn 对象

    我编写了一个有用的 移动 事件库 可以在这里找到 它本质上统一了触摸事件 以便单个事件可以绑定到一个元素 并且无论用户的设备 即移动设备或桌面设备 如何 它都会触发 代码一直运行良好 但是在调试用户的问题时 我注意到使用 jQuery 1
  • ShadowRoot.getSelection()?

    我有一个丰富的编辑器 我正在将其重写为 lit element 自定义元素 我使用 Firefox 最新 进行测试 我试图在自定义元素的 ShadowDom 中选择内容可编辑元素 在方法中 在 Firefox 调试器中 this shado
  • 如何使用 Python 将换行符写入 csv 中“\n”?

    我需要重新定义以下代码 以便行数据中的任何换行符 将显示为空行 显示为 n 书面文件中 然而 n 需要在每行之后写入以显示为空行 显然 每一行都需要编码为 utf 8 以避免错误 with open csvfile csv w as csv
  • C# 序列化和反序列化json到txt文件

    我在用着牛顿软件用于在我的 wpf 应用程序中处理 json 我有一个可以保存到txt 文件的客户 不涉及数据库 我这样做是这样的 public int store string reservation JObject customer n
  • 为什么我们使用数组而不是其他数据结构?

    在我编程时 我还没有看到数组比其他形式更适合存储信息的实例 我确实认为编程语言中添加的 功能 已经对此进行了改进 并由此取代了它们 我现在发现它们并没有被取代 而是被赋予了新的生命 可以这么说 那么 基本上 使用数组有什么意义呢 这并不是说
  • C++ 中宏相对于内联的优势

    我们知道内联是有利的 因为它们由编译器检查 并且与宏相比 作为参数传递时相同的操作 如 x 不会计算多次 但在一次采访中 有人问我在 C 中宏更适合内联的具体优点或情况 有谁知道答案或者可以思考这个问题 我唯一能想到的是 您可以使用宏来完成
  • 获取 iPhone 的物理屏幕尺寸(以英寸为单位)

    如何以编程方式获取以英寸为单位的屏幕尺寸 例如 iPhone 4 3 5 英寸 我找到了一种通过检测 iPhone iPad 型号来做到这一点的方法 但硬编码不是我想要的 所以我不看这样的东西 Swift 4 屏幕版本 let scale
  • mongodb c# API V2:ReplaceOne 和 FindOneAndReplace 之间的区别

    查看 mongodb 文档 我读到 FindOneAndReplace 将是一个原子操作 但我不明白的是为什么 ReplaceOne 不是原子的 如果存在差异 为什么还要使用 ReplaceOne 该文档揭示了一个不同的方法签名 替换一个
  • 读取文件直到Python中的特定字符

    我目前正在开发一个应用程序 该应用程序需要从文件中读取所有输入 直到遇到某个字符 通过使用代码 file open Questions txt r c file readlines c x strip for x in c 每次脱衣相遇 n