- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何覆盖最后打印的行的问题之前已被问过并得到回答(例如 here ),但似乎所有答案都假设您用类似长度的内容覆盖最后一行,例如在进度指示器中,其中“2% 完成”覆盖“1% 完成”。
但是,我想打印可变长度语句,例如“Now read file path/to/xxx/file.ext...”
,其中下一个文件名可能更短。如果我使用简单的方法,首先打印 "Now Reading ./path/with/many/long-named/subdirectories/version/LongFileNameAsWell.ext..."
,然后打印 "现在读取 ./file.ext..."
,结果是一行内容
现在正在读取./file.ext...ng-named/subdirectories/version/LongFileNameAsWell.ext
一种解决方法是在所有打印字符串后附加空格,但随后我需要确保不会换行,同时仍然有足够的空格来覆盖整个文件名。这一切都增加了大量的开销、错误的空间等等。
有Pythonic的方法可以做到这一点吗?
郑重声明,我在 Windows 上使用 Spyder 上的 Python 3.7 和 IPython 控制台
最佳答案
构建于 Sayandip Dutta's answer ,您还可以使用 shutil
中的 get_terminal_size
来获取当前行长度设置,然后写入新行并在短于该值的情况下追加空格。
import time
from shutil import get_terminal_size
l = ["1st statment is long",
"2nd short",
"3rd statement is much longer...",
"done."]
sz = get_terminal_size().columns
for i in l:
print('\r', end=i.ljust(sz, ' '))
time.sleep(1)
编辑:我刚刚意识到这可能不适用于很长的行......所以你必须使用类似的东西
lines = ["1st statment is long",
"2nd short",
"3rd statement is much longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer longer...",
"more lines",
"done."]
widths = [0] + [len(l) for l in lines][:-1]
for l, w in zip(lines, widths):
print('\r', end=l.ljust(w, ' '))
time.sleep(1)
关于python - 打印并覆盖最后一个可变长度行(在 IPython 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59102595/
我想跳出当前正在运行的程序并返回到 shell(无需重新启动 ipython) 最佳答案 在 Windows 上重新安装 console2 和 ipython 后,我遇到了同样的问题。如果您使用 ip
在使用 IPython 笔记本时,我越来越希望笔记本上附有一个控制台,以进行交互式编程。我发现自己添加了几行来测试代码片段,然后删除它们,这就是很好的用法。在更糟糕的用法中,我会更改同一行中的命令,一
ipthon-sql 是 ipython 的扩展,我先通过 pip install ipython-sql 安装 项目在这里:https://github.com/catherinedevlin/ip
我正在ipython Notebook中运行一些数据分析。一台单独的计算机收集一些数据并将其保存到服务器文件夹中,我的笔记本电脑会定期在该服务器上扫描新文件并进行分析。 我在while循环中执行此操作
我想让多个ipython Notebook实例在同一用户的不同端口上运行。可能吗? 类似于“NotebookApp.port”的端口列表(带有默认端口)。 最佳答案 再次运行jupyter noteb
所以 - ROOT 社区中的好人创造了以下魔法: # This is for intercepting the output of ROOT # In a cell, put %%rootprint
我正在使用 IPython 笔记本,我想在外部编辑器中编辑程序。 我如何获得 %edit file_name.py打开 Notepad++ 等编辑器。 最佳答案 运行 %edit?将为您提供%edit
精简版 我能否在 ipython 笔记本中获得 sympy 几何代数对象的漂亮 latex 风格打印? 更长的版本 在ipython笔记本,我可以从 sympy 得到各种数学对象的 pretty-pr
我不明白第四个和第六个提示中的 ${} 正在做什么,并且我找不到任何关于此的文档,Python for Unix and Linux 一书系统管理员有一个类似于第六个提示中的示例,其中变量不仅前面加上
我想在已安装 Python 2.7 的 Windows XP 计算机上运行 IPython(版本 0.12)。 我通过 Windows 二进制安装程序安装,但安装后 IPython 没有显示在菜单中,
IPython 中是否有自动关闭方括号、引号、圆括号等的选项? 我希望有一个类似于 gedit 插件中的功能。 最佳答案 通过调整 ~/.inputrc 可以让应用程序(包括 IPython)使用 r
我正在使用 IPython Web 笔记本,每个 block 之前都有一个提示编号,例如“In [68]:”。这个提示号码的用途是什么?你能用它做任何事吗?您可以/应该重置它吗? 最佳答案 IPyth
我升级到 iPython 3.0.0(Python 3.4;使用 Anaconda 环境;Mac OSX 10.9.5),打开新的 iPython Notebook session 的行为似乎发生了变
我希望能找到更多关于以下内容的文档: From one computer: C:\Python>ipython notebook opens the browser as 'IPython Noteb
我正在尝试在我的 IPython 笔记本中上传一个大小为 500MB 的网络日志文件。但是我收到错误消息“无法上传文件 >25Mb”。 有什么方法可以克服这个错误。任何帮助将不胜感激。 谢谢。 最佳答
简单地说,魔术函数 %precision 不考虑简单变量输出的浮点精度。 #Configure matplotlib to run on the browser %matplotlib noteboo
安装 IPython 后,我立即创建了一个默认配置文件: $ ipython profile create 然后,我创建了另一个,这次我给它起了名字testing: $ ipython profile
我已经尝试使用命令来拆分单元格“m -”,但它不起作用。使用 esc 或 fn 键作为修饰符时,所有键命令的重置都可以正常工作。我也处于正确的模式(edititng 模式)。 最佳答案 在编辑模式下,
我想将 ipython 笔记本中的字体类型更改为 consolas 字体类型。我首先使用 ipython profile create 但是,我不清楚在此配置文件中指定字体类型的语法。 任何帮助表示赞
我正在使用 iPython 命令行界面,经过一些操作后,我想将操作历史记录保存到笔记本文件中。但我从一开始就没有使用 iPython notebook。我还能做到吗? 最佳答案 来自@Thomas K
我是一名优秀的程序员,十分优秀!