我正在尝试使用AccessToken null string
CanRaiseEvents true bool
+ ClientConnectionId {1a523d10-43d8-48ed-a5b8-d6a909507f1e} System.Guid
ConnectionString "Data Source = (LocalDB)\\MSSQLLocalDB; AttachDbFilename= C:\\Users\\somepath.mdf; Integrated Security = True;" string
ConnectionTimeout 15 int
Container null System.ComponentModel.IContainer
Credential null System.Data.SqlClient.SqlCredential
DataSource "(LocalDB)\\MSSQLLocalDB" string
Database "C:\\USERS\\somepath.MDF" string
+ DbProviderFactory {System.Data.SqlClient.SqlClientFactory} System.Data.Common.DbProviderFactory {System.Data.SqlClient.SqlClientFactory}
DesignMode false bool
+ Events {System.ComponentModel.EventHandlerList} System.ComponentModel.EventHandlerList
FireInfoMessageEventOnUserErrors false bool
PacketSize 8000 int
ServerVersion "12.00.2000" string
Site null System.ComponentModel.ISite
State Open System.Data.ConnectionState
StatisticsEnabled false bool
WorkstationId "ASUSN56" string
+ Static members
+ Non-Public members
和end=\r
来打印进度条,但是Jupyter笔记本的输出仍然有新行。
print()
输出:
for i in range(0, 100000):
print(i, end='\r')
我正在Ubuntu 18.04上运行服务器,并在Mac上使用Chrome对其进行访问。如何使回车工作?
答案 0 :(得分:1)
您的代码没有错。在普通的Ubuntu 18 / Python3中运行,其行为符合预期。
我猜测这是某种缓冲问题(或Jupyter中的错误)。
根据发布的@unutbu链接,似乎只需要很小的时间就可以让Jupyter变形。
import time
for i in range(100000):
print(i, end='\r')
time.sleep(0) # EDIT, somehow even this works too.
print("")
很显然,如果您确实有大量输出(例如10万行),那么这远非理想。但是真正的延迟在于屏幕的刷新和重新绘制,而不是实际的time.sleep()
。
如果您在快速重复循环中执行这种操作,最好每隔几秒钟(或大约几秒钟)更新一次进度条。这可以通过检查时间增量来实现。