我有一个类似文件的对象表示一个潜在的层出不穷的流。我想从这个流中读取数据并计算行数,并且我想使用通用换行符。如何在通用换行模式下从已打开的文件中读取数据?
我无权访问打开该文件的说明,因此我不能只将mode='rU'
添加到open语句或其等效语句中。
我也不能将整个文件读入内存,并使用splitlines()
或io.StringIO(unicode(mystream.read()), newline=None)
有谁知道的一种方式做到这一点?
我有一个类似文件的对象表示一个潜在的层出不穷的流。我想从这个流中读取数据并计算行数,并且我想使用通用换行符。如何在通用换行模式下从已打开的文件中读取数据?
我无权访问打开该文件的说明,因此我不能只将mode='rU'
添加到open语句或其等效语句中。
我也不能将整个文件读入内存,并使用splitlines()
或io.StringIO(unicode(mystream.read()), newline=None)
有谁知道的一种方式做到这一点?
类似python文件的对象通常支持“.fileno()”方法。这将返回基础文件句柄。一旦你有了文件句柄,你应该可以使用os.fdopen(file_handle,“rU”)来获得一个具有通用换行语义的新文件对象。
谢谢!这很好:) – Nathan 2014-10-17 21:03:00
“......可能......不已算行”∞ – Luigi 2014-10-17 20:37:42
@Luigi我假设OP的意思是‘算线至今’ – aruisdante 2014-10-17 20:38:09
@aruisdante我想,但我的大脑扔了运行时错误 – Luigi 2014-10-17 20:38:56