当前位置: 首页 > 知识库问答 >
问题:

在Python中如何将string放在两行上?[副本]

阳光辉
2023-03-14

我对Python、PyCharm和Web API测试是全新的。

我正在尝试测试在Web API中出错时显示的错误消息。该错误消息有两部分,分别显示在两行上。

    wp_error = 'This page can\'t be saved.\n Some required information is missing.'

    # create new workspace and save it without filling up any information.
    self.test_mycode.click_and_wait(self.workspace_overview.new_workspace_button,
                                     self.new_workspace._save_button_locator)
    self.new_workspace.save_button.click()

    self.message.check_message('error', wp_error)
self = <class 'unittestzero.Assert'>
first = "This page can't be saved.
Some required information is missing."
second = "This page can't be saved.\n Some required information is missing."
.....

>       assert first == second, msg
E       AssertionError: None

共有1个答案

唐默
2023-03-14

如果:

first = """This page can't be saved.
Some required information is missing."""
second = "This page can't be saved.\n Some required information is missing."
assert first == second

失败,那么问题很可能是:

first  == "This page can't be saved.\nSome required information is missing."
second == "This page can't be saved.\n Some required information is missing."

即。在换行符后面的第二个部分中有一个额外的空格。(还要注意三个引号,以允许字符串跨行而不需要编译器抱怨,)

import re
FOLD_WHITESPACE = re.compile(r'\s+')

def oneline(s):
   return FOLD_WHITESPACE.sub(" ", s)

assert oneline(first) == oneline(second)

顺便说一句,如果您使用的是assert的对象调用版本,那么它可能被表述为:

Assert.equal(oneline(message.message_body.text),
             oneline(message_text))
 类似资料:
  • 当我尝试这样做时,我得到如下输出: 我只想把我的out放入。我怎么才能做到这一点?

  • 问题内容: 我使用Java中的Swing创建了一种表单。在表单中,我使用了一个文本字段,每当我按下该键时都必须在该文本字段上设置焦点。如何在Java中的特定组件上设置焦点? 问题答案: 请问给你你需要什么?

  • 问题内容: 我发现了很多类似的问题,但并没有解决此问题的方法:我想 从磁盘加载图像文件 裁剪(是否懒惰) 将其放在TKinter画布上 而且,最好不要将步骤1设为gif文件,但是即使必须这样做,我也会很高兴。而已.. 我可以加载文件,可以裁剪文件(在PIL中),也可以将其放置在画布上(在TKinter中),但是我似乎无法将所有内容组合在一起。(因此,从PIL到TKinter的简单转换是够吗?)我当

  • 我在github上创建了一个新的存储库,其名称与我的目录(myfolder)相同。 控制台:git init 通过控制台找到我的文件夹:cd MyFolder 控制台:git remote add origin https://github.com/acount/myfolder.git之后,我将接受下一个错误:fata:remote origin已经存在。 怎么啦?

  • 我在向JPanel添加图形时遇到了问题。如果我从panel.add(new graphics())中更改行;添加(new graphics());并且不将JPanel添加到JFrame,黑色矩形将出现在JFrame上。我只是不能让黑色矩形出现在JPannel上,想知道是否有人能帮我做这件事。

  • 问题内容: 我想int放入一个。这是我目前正在做的事情: 我必须为几个不同的数字运行程序,所以我想做一个循环。但是像这样插入变量不起作用: 如何在字符串中插入变量? 问题答案: 当跟随字符串时,%运算符允许你通过格式代码(在本例中为%d)将值插入该字符串。有关详细信息,请参阅Python文档: