- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
除了其他一些链接之外,我还浏览了以下两个链接,并且我已经尝试了大部分提供的示例和建议,但是在我的输出中,进度条没有得到更新,而是显示了新的,无论是在同一行的结尾还是交替在新线上。我在这里缺少什么,有人可以指导我。
Text Progress Bar in the Console
为方便起见,我正在重现我尝试过的一些代码(来自上述线程的示例)及其输出。我是否理解错误,它会更新同一行或者我错过了什么。感谢你的帮助。我在 Windows 7 上使用 Python 3.4 并在控制台上获取输出(无 GUI)。
示例 1:
import progressbar
import time, sys
progress = progressbar.ProgressBar()
for i in progress(range(80)):
time.sleep(0.01)
输出 1:
>>>
0% | |
1% | |
2% |# |
3% |## |
5% |### |
6% |#### |
7% |##### |
8% |###### |
10% |####### |
11% |######## |
12% |######### |
13% |######### |
15% |########## |
16% |########### |
17% |############ |
18% |############# |
20% |############## |
21% |############### |
22% |################ |
23% |################# |
25% |################## |
26% |################## |
27% |################### |
28% |#################### |
30% |##################### |
31% |###################### |
32% |####################### |
33% |######################## |
35% |######################### |
36% |########################## |
37% |########################### |
38% |########################### |
40% |############################ |
41% |############################# |
42% |############################## |
43% |############################### |
45% |################################ |
46% |################################# |
47% |################################## |
48% |################################### |
50% |#################################### |
51% |#################################### |
52% |##################################### |
53% |###################################### |
55% |####################################### |
56% |######################################## |
57% |######################################### |
58% |########################################## |
60% |########################################### |
61% |############################################ |
62% |############################################# |
63% |############################################# |
65% |############################################## |
66% |############################################### |
67% |################################################ |
68% |################################################# |
70% |################################################## |
71% |################################################### |
72% |#################################################### |
73% |##################################################### |
75% |###################################################### |
76% |###################################################### |
77% |####################################################### |
78% |######################################################## |
80% |######################################################### |
81% |########################################################## |
82% |########################################################### |
83% |############################################################ |
85% |############################################################# |
86% |############################################################## |
87% |############################################################### |
88% |############################################################### |
90% |################################################################ |
91% |################################################################# |
92% |################################################################## |
93% |################################################################### |
95% |#################################################################### |
96% |##################################################################### |
97% |###################################################################### |
98% |####################################################################### |
100% |########################################################################|
示例 2:
for i in range(0, 101, 10):
sys.stdout.write('\r>> You have finished %3d%%\r' % i)
sys.stdout.flush()
sys.stdout.flush()
time.sleep(1)
print
输出 2:
You have finished 0% >> You have finished 10% >> You have finished 20% >> You have finished 30% >> You have finished 40% >> You have finished 50% >> You have finished 60% >> You have finished 70% >> You have finished 80% >> You have finished 90% >> You have finished 100%
示例 3:
def update_progress(progress):
barLength = 20 # Modify this to change the length of the progress bar
status = ""
if isinstance(progress, int):
progress = float(progress)
if not isinstance(progress, float):
progress = 0
status = "error: progress var must be float\r\n"
if progress < 0:
progress = 0
status = "Halt...\r\n"
if progress >= 1:
progress = 1
status = "Done...\r\n"
block = int(round(barLength*progress))
text = "\rPercent: [{0}] {1}% {2}".format( "="*block + " "*(barLength-block), progress*100, status)
sys.stdout.write(text)
sys.stdout.flush()
print("")
print("progress : 0->1")
for i in range(101):
time.sleep(0.1)
update_progress(i/100.0)
print("")
print("Test completed")
time.sleep(1)
输出 3:
>>>
progress : 0->1
Percent: [ ] 0.0%
Percent: [ ] 1.0%
Percent: [ ] 2.0%
Percent: [= ] 3.0%
Percent: [= ] 4.0%
Percent: [= ] 5.0%
Percent: [= ] 6.0%
Percent: [= ] 7.000000000000001%
Percent: [== ] 8.0%
Percent: [== ] 9.0%
Percent: [== ] 10.0%
Percent: [== ] 11.0%
Percent: [== ] 12.0%
Percent: [=== ] 13.0%
Percent: [=== ] 14.000000000000002%
Percent: [=== ] 15.0%
Percent: [=== ] 16.0%
Percent: [=== ] 17.0%
Percent: [==== ] 18.0%
Percent: [==== ] 19.0%
Percent: [==== ] 20.0%
Percent: [==== ] 21.0%
Percent: [==== ] 22.0%
Percent: [===== ] 23.0%
Percent: [===== ] 24.0%
Percent: [===== ] 25.0%
Percent: [===== ] 26.0%
Percent: [===== ] 27.0%
Percent: [====== ] 28.000000000000004%
Percent: [====== ] 28.999999999999996%
Percent: [====== ] 30.0%
Percent: [====== ] 31.0%
Percent: [====== ] 32.0%
Percent: [======= ] 33.0%
Percent: [======= ] 34.0%
Percent: [======= ] 35.0%
Percent: [======= ] 36.0%
Percent: [======= ] 37.0%
Percent: [======== ] 38.0%
Percent: [======== ] 39.0%
Percent: [======== ] 40.0%
Percent: [======== ] 41.0%
Percent: [======== ] 42.0%
Percent: [========= ] 43.0%
Percent: [========= ] 44.0%
Percent: [========= ] 45.0%
Percent: [========= ] 46.0%
Percent: [========= ] 47.0%
Percent: [========== ] 48.0%
Percent: [========== ] 49.0%
Percent: [========== ] 50.0%
Percent: [========== ] 51.0%
Percent: [========== ] 52.0%
Percent: [=========== ] 53.0%
Percent: [=========== ] 54.0%
Percent: [=========== ] 55.00000000000001%
Percent: [=========== ] 56.00000000000001%
Percent: [=========== ] 56.99999999999999%
Percent: [============ ] 57.99999999999999%
Percent: [============ ] 59.0%
Percent: [============ ] 60.0%
Percent: [============ ] 61.0%
Percent: [============ ] 62.0%
Percent: [============= ] 63.0%
Percent: [============= ] 64.0%
Percent: [============= ] 65.0%
Percent: [============= ] 66.0%
Percent: [============= ] 67.0%
Percent: [============== ] 68.0%
Percent: [============== ] 69.0%
Percent: [============== ] 70.0%
Percent: [============== ] 71.0%
Percent: [============== ] 72.0%
Percent: [=============== ] 73.0%
Percent: [=============== ] 74.0%
Percent: [=============== ] 75.0%
Percent: [=============== ] 76.0%
Percent: [=============== ] 77.0%
Percent: [================ ] 78.0%
Percent: [================ ] 79.0%
Percent: [================ ] 80.0%
Percent: [================ ] 81.0%
Percent: [================ ] 82.0%
Percent: [================= ] 83.0%
Percent: [================= ] 84.0%
Percent: [================= ] 85.0%
Percent: [================= ] 86.0%
Percent: [================= ] 87.0%
Percent: [================== ] 88.0%
Percent: [================== ] 89.0%
Percent: [================== ] 90.0%
Percent: [================== ] 91.0%
Percent: [================== ] 92.0%
Percent: [=================== ] 93.0%
Percent: [=================== ] 94.0%
Percent: [=================== ] 95.0%
Percent: [=================== ] 96.0%
Percent: [=================== ] 97.0%
Percent: [====================] 98.0%
Percent: [====================] 99.0%
Percent: [====================] 100% Done...
Test completed
>>>
编辑:您可以看到正在同一行上打印,但它附加在最后一次打印的末尾,而不是覆盖,这是预期的效果。谢谢!
最佳答案
>>> import time
>>> for i in range(0, 101, 10):
... print('\rYou have finished %3d%%' % i, end='', flush=True)
... time.sleep(1)
... else:
... print()
...
You have finished 100%
>>>
在 win32 上使用 Python 3.4.3 为我工作...
Idle 无法正确呈现回车符。
查看python print one line same space . “完成,我错误地使用了 IDLE”或 Implementing a backspace in Python 3.3.2 Shell using Idle .
Idle 更像是一个 Python 文本编辑器,没有真正的控制台...因此您无法解释控制符号并同时正确打印它...
>>> print("asd\rfgh")
asdfgh
关于python - Windows 上 Python 控制台中的进度条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32197618/
我正在处理一组标记为 160 个组的 173k 点。我想通过合并最接近的(到 9 或 10 个组)来减少组/集群的数量。我搜索过 sklearn 或类似的库,但没有成功。 我猜它只是通过 knn 聚类
我有一个扁平数字列表,这些数字逻辑上以 3 为一组,其中每个三元组是 (number, __ignored, flag[0 or 1]),例如: [7,56,1, 8,0,0, 2,0,0, 6,1,
我正在使用 pipenv 来管理我的包。我想编写一个 python 脚本来调用另一个使用不同虚拟环境(VE)的 python 脚本。 如何运行使用 VE1 的 python 脚本 1 并调用另一个 p
假设我有一个文件 script.py 位于 path = "foo/bar/script.py"。我正在寻找一种在 Python 中通过函数 execute_script() 从我的主要 Python
这听起来像是谜语或笑话,但实际上我还没有找到这个问题的答案。 问题到底是什么? 我想运行 2 个脚本。在第一个脚本中,我调用另一个脚本,但我希望它们继续并行,而不是在两个单独的线程中。主要是我不希望第
我有一个带有 python 2.5.5 的软件。我想发送一个命令,该命令将在 python 2.7.5 中启动一个脚本,然后继续执行该脚本。 我试过用 #!python2.7.5 和http://re
我在 python 命令行(使用 python 2.7)中,并尝试运行 Python 脚本。我的操作系统是 Windows 7。我已将我的目录设置为包含我所有脚本的文件夹,使用: os.chdir("
剧透:部分解决(见最后)。 以下是使用 Python 嵌入的代码示例: #include int main(int argc, char** argv) { Py_SetPythonHome
假设我有以下列表,对应于及时的股票价格: prices = [1, 3, 7, 10, 9, 8, 5, 3, 6, 8, 12, 9, 6, 10, 13, 8, 4, 11] 我想确定以下总体上最
所以我试图在选择某个单选按钮时更改此框架的背景。 我的框架位于一个类中,并且单选按钮的功能位于该类之外。 (这样我就可以在所有其他框架上调用它们。) 问题是每当我选择单选按钮时都会出现以下错误: co
我正在尝试将字符串与 python 中的正则表达式进行比较,如下所示, #!/usr/bin/env python3 import re str1 = "Expecting property name
考虑以下原型(prototype) Boost.Python 模块,该模块从单独的 C++ 头文件中引入类“D”。 /* file: a/b.cpp */ BOOST_PYTHON_MODULE(c)
如何编写一个程序来“识别函数调用的行号?” python 检查模块提供了定位行号的选项,但是, def di(): return inspect.currentframe().f_back.f_l
我已经使用 macports 安装了 Python 2.7,并且由于我的 $PATH 变量,这就是我输入 $ python 时得到的变量。然而,virtualenv 默认使用 Python 2.6,除
我只想问如何加快 python 上的 re.search 速度。 我有一个很长的字符串行,长度为 176861(即带有一些符号的字母数字字符),我使用此函数测试了该行以进行研究: def getExe
list1= [u'%app%%General%%Council%', u'%people%', u'%people%%Regional%%Council%%Mandate%', u'%ppp%%Ge
这个问题在这里已经有了答案: Is it Pythonic to use list comprehensions for just side effects? (7 个答案) 关闭 4 个月前。 告
我想用 Python 将两个列表组合成一个列表,方法如下: a = [1,1,1,2,2,2,3,3,3,3] b= ["Sun", "is", "bright", "June","and" ,"Ju
我正在运行带有最新 Boost 发行版 (1.55.0) 的 Mac OS X 10.8.4 (Darwin 12.4.0)。我正在按照说明 here构建包含在我的发行版中的教程 Boost-Pyth
学习 Python,我正在尝试制作一个没有任何第 3 方库的网络抓取工具,这样过程对我来说并没有简化,而且我知道我在做什么。我浏览了一些在线资源,但所有这些都让我对某些事情感到困惑。 html 看起来
我是一名优秀的程序员,十分优秀!