在python3中在一行上打印多个字符串的正确方法是什么

时间:2019-06-15 11:47:02

标签: python python-3.x

static inline void accurate_ndelay(uint16_t ns){
  uint64_t s = ktime_get_ns();
  uint64_t e = s + ns;
  while(ktime_get_ns() < e);
}
static inline void unsafe_bit2812(struct WS2812* ws2812, uint8_t b){
  if(b){
    gpio_set_value(ws2812->pin, 1);
    accurate_ndelay(ws2812->t0h);
    gpio_set_value(ws2812->pin, 0);
    accurate_ndelay(ws2812->t0l);
  } else {
    gpio_set_value(ws2812->pin, 1);
    accurate_ndelay(ws2812->t1h);
    gpio_set_value(ws2812->pin, 0);
    accurate_ndelay(ws2812->t1l);
  }
}

我正在使Web应用程序目录bruteforcer该程序使用用户获取网站名称,并从directory.txt获取目录名称,并通过将目录名称一个接一个地附加到网站来向网站发送请求。 该程序在下一行上打印状态代码,但我想输出“ Found directory 200 OK”或“ Not found directory 404 Error”。

2 个答案:

答案 0 :(得分:0)

这样做的正确方法是:

if response.status_code == 200:
        print("Found {} {}".format(item, OK))
    else:
        print("Not Found {} {}".format(item, Not_OK))

我也不会调用第二个字符串Error,因为它是已经定义的关键字。我删除了print("\n"),因为打印功能已经在行末添加了它​​,如果要在每行之间留空行,请保留它。

答案 1 :(得分:0)

print接受许多参数,并将其连接如下:

print("Found", item, OK)

请注意,不要在“ Found”之后放置空格,print会自动在参数之间放置空格。

此外,在python 3.6及更高版本中,您可以使用以下代码:

if response.status_code == 200:
    print(f"Found {item} {OK}")
else:
    print(f"Not found {item} {Error}")

正如Antoine所说,错误在这里不是一个好变量,