问题标签 [tell]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
64 浏览

python - 指针位置不是从 0 开始

我想问一下tell() 方法。所以,有这样的代码

和结果

我希望我的键值从 0 开始,因为它是句子开头的第一个指针位置。但它从第二句的起始指针值开始。抱歉,我是 python 新手。

数据看起来像这样。它包含几行

0 投票
0 回答
119 浏览

python - 在 Python 中处理文本文件时,Tell() 方法不可靠

在 python 中处理文本文件时,似乎 .tell() 方法不是很可靠。我正在尝试使用这种方法来代替在其他编程语言中发现的 EOF 条件。

由于各种原因,我不想使用 FOR 循环来迭代文本文件,而是使用 WHILE 循环。

下面是一些复制问题的代码。我已经包含了将以随机方式生成 test.txt 文本文件的代码:

此代码应始终输出如下内容:

但相反,它主要输出类似于:

您可以看到,在上面输出的最后一行,.tell() 方法的输出变得混乱,没有循环遍历所有 140 行。

我正在寻找一种方法来使 .tell() 方法运行或以另一种方式检测 EOF 条件以中断 WHILE 循环。

同样,网上找到的大多数建议都说“使用 FOR 循环进行迭代”。出于各种难以解释的原因,我不想这样做。(简而言之,由于我打算遵循嵌套流程图,这将使我的原始代码的性质非常笨拙。)

0 投票
1 回答
64 浏览

python - (Python 3) 我有一些关于 seek() 和 tell() 的问题

我目前正在通过 Zed Shaw 的书 Learning Python 3 The Hard Way 学习 Python 3。

在做关于函数和文件的练习 20 时,你的任务是让研究人员知道seek 函数的作用。通过在线搜索,我遇到了一些关于此功能的概念,但我无法理解:

这是我在网上找到的关于seek()目的的解释:

Python 文件方法 seek() 将文件的当前位置设置为偏移量。

  • 在这种情况下,“文件的当前位置”是什么意思?

这是我在网上找到的关于tell()目的的解释:

Python 文件方法tell() 返回文件读/写指针在文件中的当前位置。

  • 在这种情况下,“文件读/写指针”是什么意思?
0 投票
1 回答
87 浏览

python - 在 python 中使用带有 a+ 模式的 open 函数的奇怪结果

我的问题是关于带有模式的 Python 内置open函数。a+首先,从这个线程中,我知道a+模式,随后对文件的写入将始终以文件的当前结尾结束。我编写了以下简单程序来确认这一事实:

是的,'added'即使通过seek()方法强制将流定位在文件的开头,也会附加在末尾。

我认为cc应该是[],因为流位于文件的末尾。然而,这是错误的!结果是:

cc显示附加前的所有文本added。此外,切换到评论f.seek(0)或切换到取消评论print(f.tell())都会使事情变得正常:c变成[]预期的那样。对我来说,这意味着tell()在这种情况下确实改变了一些东西——不仅仅是报告职位。如果有人能告诉我这背后的逻辑,我将不胜感激。

0 投票
1 回答
45 浏览

python - Python:扫描文件中的子字符串,保存位置,然后返回它

我正在编写一个脚本,该脚本需要扫描文件,直到找到出现子字符串的行,保存该行开头的位置,然后稍后返回。我对python很陌生,所以我还没有取得太大的成功。这是我当前的代码:

使用 test.txt:

这是输出:

我意识到我的原件pos = f.tell()给了我行而不是开头的位置,我发现这个答案详细说明了如何获取字符串的字节长度,但是使用它会切断第一个字符。使用 utf-16 或 utf-16-le 分别给出ValueError: negative seek position -18or ValueError: negative seek position -16。我尝试使用答案中的解决方案,使用以下代码:

这给出io.UnsupportedOperation: can't do nonzero cur-relative seeksf.seek(-len(line), 1)

有人可以指出我要去哪里错了吗?

0 投票
1 回答
85 浏览

python - Python seek() 没有将指针移到正确的位置

我正在尝试以下 python seek()/tell() 函数。“input.txt”是一个包含 6 个字母的文本文件,每行一个:

我原以为字母“c”会被覆盖为“-”,但我却像这样附加了破折号,尽管打印上写着“在位置 4 写入”:

当我交换 readline() 和 tell() 时输出是正确的(“b”将被“-”替换):

可以帮助解释为什么前一种情况不起作用?谢谢!