簡體   English   中英

在一個單詞后編輯一行文本文件

[英]Editing a line of text file after a word

我有一個屬性文件,必須通過 python 編輯它。 我需要編輯行jmx.admin.pwd=SomeRandomPassword並用我自己的密碼替換隨機密碼。 我無法這樣做。

文本文件如下所示:

some line
some line
some line
min.pop.password=SomeRandomNumbersWordsCharacters
some line
some line
some line

下面應該是修改后的輸出:

some line
some line
some line
min.pop.password=My_Password
some line
some line
some line

由於我是 Python 新手,因此非常感謝任何幫助。

您可以做的是,首先打開文件,然后將所有行讀入列表content從每個行中刪除\\n 從這里你可以搜索這個列表,您的target具有的單詞或它的一些獨特的詞組,對於這一點,我們使用password 不,我們可以將它設置為target同時在=處拆分它,並存儲target_idx 從這里我們只需更改我們.split('=')target的第二個索引,然后將.join()重新組合在一起。 現在我們可以將我們的新行phrase分配給替換舊targetcontenttarget_idx 在我們可以打開我們的text.txt備份並使用'\\n'.join(content)寫入新content

with open('text.txt') as f:
    content = [line.strip() for line in f]

for i in content:
    if 'password' in i:
        target = i.split('=')
        target_idx = content.index(i)

target[-1] = 'My_Password'
mod = '='.join(target)

content[target_idx] = mod

with open('text1.txt', 'w') as f:
    f.write('\n'.join(content))

chrx@chrx:~/python/stackoverflow/10.3$ cat text.txt some line some line some line min.pop.password=SomeRandomNumbersWordsCharacters some line some line some line

chrx@chrx:~/python/stackoverflow/10.3$ cat text.txt some line some line some line min.pop.password=My_Password some line some line some line

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM