问题标签 [linecache]

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 投票
0 回答
311 浏览

python - Python可执行文件无法读取文件

下面给出的是我用来从文件中读取值的代码

我正在使用py2exe将文件转换为可执行文件。问题是转换为exe后无法读取文件。

错误消息是: 无法将字符串转换为浮点数

正如评论中所建议的,完整的错误跟踪是:

我哪里错了?

0 投票
1 回答
282 浏览

python - 使用 linecache 提取行的特定变量

我目前正在使用 python linecache 模块从给定的文本文档中获取特定的行,并使用该行创建一个新文件。例如,部分代码如下所示:

问题是在 variables.txt 中,第 7 行由下式给出:

例如。但是,我希望新文件 lo_cs 仅包含实际值 '3423' 而不是整行文本。此外,我想将整个“getline”命令插入到 if 循环中,以便如果 variable7 留空,则执行另一个操作。有没有办法使用 linecache 来检查 'variable7 = ' 后面的空间,看看那里是否有任何输入,如果有,只抓取那个特定的值或字符串?

我知道(但不太明白)bash 脚本似乎使用“$”作为插入或调用给定文件的占位符。我想我需要实现类似的东西......

我考虑在文本文件中添加说明,指出应该在下面的行中指定该值——以避免只选择一行的段——但这允许一个人意外输入多余的中断,这会搞砸所有随后的“getline”命令,根据需要选择哪一行。

任何正确方向的帮助将不胜感激!

0 投票
1 回答
1821 浏览

ruby - 尝试使用 Ruby 2.1.1 安装 linecache 时无法处理 1.9.x 错误

我正在尝试在 Ruby 2.1.1 上安装带有 RVM 的 linecache。

我运行捆绑安装

当我运行捆绑安装时,它说它与 1.9.x 不兼容:

有什么想法吗?

0 投票
1 回答
897 浏览

python - Python:linecache 没有按预期工作?

您好,我有这个 python 脚本,我需要用它来遍历一些目录并在这些目录中的一些文件中提取一些信息。

所以我有很多目录。在这些目录中的每一个中,还有 5 个以上的子目录。在这 5 个子目录中的每一个子目录中,我都有 3 个文本文件。一个是我忽略的.txt,另一个是.out,我需要阅读它以查看它是否有一行带有“Fin”一词。如果它有该行,那么我必须读取具有 .time 扩展名的剩余文件。该文件在 Unix 中具有 time 命令的输出,如下所示:

从这个文件中,我需要提取实时行,这是该文件的第二行(实际 0m1.185s),第一行是'\n'。

因此,我为当前目录上的 5 个子目录(这意味着总共 5 个文件)上的每个文件提取了这一行,我必须总结每个文件的每一行表示的总秒数,然后将其除以 5 到获得 5 个子目录的平均值。

现在,对于这些平均总数中的每一个,我都会使用该值编写一个输出文件。所以如果我有两个目录

这些目录中的每一个都有 5 个子目录

在这些子目录中,我有文本文件,这意味着在 1/1 上有一个 something.out 文件,希望里面有单词“Fin”。如果是,那么在 1/1 上有一个 something.time 文件,我从中提取实时行。然后我将 1/1 1/2 1/3 1/4 1/5 中的 .time 文件的值相加,然后将它们除以 5 得到平均值。然后我将此平均值写入输出文件。

我遇到的问题是我使用命令行cache.getline 从something.time 文件中提取第二行,但这不能正常工作,因为它奇怪地在每个子目录中提取了同一行。所以在子目录 1/1 上,something.time 文件的第二行是“real 0m1.809s”。我的代码做得很好,但随后它进入 1/2 子目录并在那里提取了 something.time 文件的第二行,奇怪的是它显示那是相同的“真正的 0m1.809s”行,但如果我进入某个东西。 1/2 的时间文件显示它是“真正的 0m1.009s”。

现在同样的情况发生在 2/ 目录中。它在它进入的第一个子目录中提取文件的第一行,但随后它只是重复该行 5 次。

这是我的代码有人可以指出我的错误在哪里吗?

0 投票
2 回答
418 浏览

python - 如何使用 Python 从文件中的特定行获取三个整数?

我有一个(ASCII)文件,foo.txt里面有很多东西,但我只关心第 2 行的三个数字(由空格分隔)。供您参考(我不知道它是否相关)此行之前和之后的行数与第 2 行不同。

我想从第 2 行获取这三个数字并将它们存储为三个单独的整数(无论是三个单独的变量还是长度为 3 的列表,我都不在乎)。

我曾经linecache.getline()专门从文件中获取该行,但它将该行作为一个长字符串拉出(而不是让行上的每个数字都是它自己的字符串)并且我不知道如何从结果中提取三个数字细绳。

这是我的代码:

注释行是我尝试将 linetemp 中的数字提取为整数,但由于 linetemp 是一个字符串(而不是字符串列表),它不起作用。

如果您可以改进我上面使用linecache.getline()的方法,或者如果您有另一种方法从第 2 行中提取三个数字,foo.txt我会很高兴。

0 投票
1 回答
2304 浏览

python - 如何将 linecache 与 unicode 一起使用?

我这样打开我的文件:

但是,当我

我得到一个例外

这是因为(我认为)linecache.getline返回一个 str() (它没有decode()方法)。

我的脚本必须能够支持 unicode,所以我不能简单地将输入文件转换为 UTF-8。

0 投票
4 回答
11137 浏览

python - Python:从文本中选择特定行

我正在尝试编写一个代码:

  • 打开一个文本文件
  • 转到以“开始”开头的行
  • 从以“start”开头的行(之前选择)转到第 3 行
  • 检查该行是否包含“包含”字样

如果是 = 打印“确定”:

我需要整合“3rd line”条件

0 投票
1 回答
111 浏览

python - Py2exe 无法使用 linecache

当我将其作为 .py 文件运行时,我的以下代码部分可以完美运行。当我使用 py2exe 将其转换为 .exe 时,linecache.getline() 函数似乎无法正常工作。我能够很好地创建和编写 .txt 文件,所以我相信 linecache 功能是问题所在。是否有任何解决方法不使用 linecache 从文本文件中读取指定行,或者有没有办法让 linecache 与 Py2exe 一起工作?

提前感谢您提供的任何帮助。

0 投票
1 回答
115 浏览

python - 正常功能所需的不必要的导入

我正在用 Python 实现宏(受 MacroPy 的启发)。我的项目(执行“tests.py”时)运行良好,但是当我import linecache从文件“import_hook.py”(所有文件都在这里)中注释(或删除)该行时它不起作用。该脚本陷入递归,然后 Python 使用另一个 FileFinder 和 Loader。

这是'import_hook.py'的代码:

这可能是一个丑陋的代码,但我对 Python 导入系统很陌生,我很高兴得到答案!

编辑: 我已经在 PyCharm 中运行它import linecache,但它没有工作,但是当我使用参数-m pdb(Python 调试器)运行它时,它按预期工作。我认为这个问题可能更多是关于 PyCharm 而不是 Python……

0 投票
1 回答
6110 浏览

python - Python:获取类的源代码(使用检查)

我正在使用 ipython,我想保存在我的一个笔记本中定义的类。我可以使用 %save 和 inspect.getsource 很好地使用函数来做到这一点,但我似乎无法获得我的课程的来源。我快速浏览了检查中的方法,似乎找不到任何可以帮助的方法。有什么建议么?