python3:.strip()无法按预期工作

时间:2019-08-07 11:28:42

标签: python python-3.x jupyter-notebook strip

我正在解析文件,并希望从文件行中删除能量一词,但是使用.strip("Energy")并不能达到预期的效果,因此删除了'Epoch'的'E'。我可能没有正确使用数据类型,或者无法正确理解.strip()。请解释为什么我在这篇文章的末尾得到了输出。
我有一个文件,它看起来像:

Epoch [20/20], Step 1,[1/3000], Loss: 7.2197, Energy: 0.2414, Prediction:-2.4456 

Epoch [20/20], Step 2,[2/3000], Loss: 0.6216, Energy: -0.2094, Prediction:0.5790 

,然后在jupyter notebook

中通过以下代码
with open(out_file) as f:
    for i in f:
        if i.startswith("Epoch"):
            row=str(i)
            print(row.strip("Energy")) # notice this line

这给了我以下输出

poch [20/20], Step 1,[1/3000], Loss: 7.2197, Energy: 0.2414, Prediction:-2.4456 

poch [20/20], Step 2,[2/3000], Loss: 0.6216, Energy: -0.2094, Prediction:0.5790 

1 个答案:

答案 0 :(得分:2)

Scenario Outline: User saves contact phone number Given I am on the contact details page When I enter the following details | email | phone | | pete@gmail.com | <Phone> | And I save the details Then the details are correctly saved Examples: | Phone | | 012345678 | | 012345678901234567890 | Scenario Outline: User saves contact e-mail address Given I am on the contact details page When I enter the following details | email | phone | | <Email> | 012345678 | And I save the details Then the details are correctly saved Examples: | Email | | pete@gmail.com | | peterpeterperterlongemailaddress1234567890@gmailsomething.com | 文档:“返回字符串S的副本,其中删除了开头和结尾的空格。如果指定了chars而不是None,请改为删除chars中的字符。”。因此,它会从两端剥离所有str.strip()Energ字符。对于您来说,y中的E,而不是下一个Epoch,而不是末尾的数字。

您可以这样做:

p

从头开始删除if i.startswith('Energy'): print(i[6:])