如果有空格b,如何在python中查找并添加新行

2024-05-13 07:56:25 发布

您现在位置:Python中文网/ 问答频道 /正文

我的代码有点问题。在“第1行和第2行”之前,文件中的文本有一些空格,我怎么能忽略它们?你知道吗

例如:

<server xmlns="urn:jboss:domain:1.2">
         </handlers>
        </root-logger>
    </subsystem>
    <subsystem xmlns="urn:jboss:domain:naming:1.1">
    <bindings>

这些空格会干扰代码查找第1行和第2行。你知道吗

下面是我的代码

with open("xxx", "r+") as f:
a = [x.rstrip() for x in f]
index = 1
line1 = '<subsystem xmlns="urn:jboss:domain:naming:1.1">'
line2 = "<bindings>"
for item in a:
    if item.startswith(line1 and line2):
        a.insert(index, '<simple name="java:global/nbs/app/portal/config/routes"\n\tvalue="C:\\nbs\\app\\portal\\routes.properties"/>')
        break
    index += 1
f.seek(0)
for line in a:
    f.write(line + "\n")

Tags: 代码inforindexdomainbindingsitemjboss
2条回答

lstrip()方法将删除字符串开头的前导空格、换行符和制表符:

>>> '     hello world!'.lstrip()
'hello world!

引用:How do I remove leading whitespace in Python?

改变这个

a = [x.rstrip() for x in f]

在这里

a = [x.strip() for x in f]

解释:rstrip()只修剪右边的空白,您需要的是strip()方法,它可以将两边的空白都去掉。你知道吗

相关问题 更多 >