我编写了一个脚本来计算访问网站的响应时间。下面是我脚本中的print语句:
$ ./script.py
|time=3.693447in 0:00:03.693447 HIT from 127.0.0.1
输出:
print
正如你所看到的那样,当我的输出重叠时,时间变量正在打印线的前面。
有人可以帮助我在[self.navigationItem.backBarButtonItem setTitle:@" "];
声明中找出我做错了什么。
答案 0 :(得分:3)
\r
变量中有host
回车符(作为最后一个字符)。这会将光标发送回行的开头,导致字符串的其余部分(|time=....
)覆盖之前的任何内容。
您可以使用str.strip()
method从变量中清除它:
print "OK: Completed in %s %s|time=%s" % (delta, host.strip(), seconds)
str.strip()
方法从字符串的开头和结尾删除所有空格(返回一个新的字符串对象);空格被定义为制表符,空格,换行符和回车符。
演示:
>>> delta = '0:00:03.693447' # a string will do for the demo
>>> seconds = 3.693447
>>> host = 'foobar\r'
>>> print "OK: Completed in %s %s|time=%s"%(delta, host, seconds)
|time=3.693447in 0:00:03.693447 foobar
>>> print "OK: Completed in %s %s|time=%s" % (delta, host.strip(), seconds)
OK: Completed in 0:00:03.693447 foobar|time=3.693447