我刚开始学python。我用mods玩了一个游戏,它有很多.cfg文件我想编辑。确切地说,我想删除一行,以一个特定的关键字开始。 我在这个论坛和其他论坛上读了很多文章,但人们的目标似乎略有不同,这对我的案例不太适用。你知道吗
这些配置文件有许多其他不同的配置。它跨越数百条线。我只是把它剥离出来,让它更容易处理,直到我会想出一个解决方案。你知道吗
我想删除整行有一个词。你知道吗
MODULE
{
name = USI_SwapController
ResourceCosts = SpecializedParts,8,MaterialKits,40,ElectricCharge,40
}
MODULE
这是我发现有人发布的代码,它只是用一个空格替换了关键字-resourcecosts。这很可能会奏效,但在某些情况下可能会使游戏崩溃或出现一些错误。我想删除包含这个词的整行。你知道吗
key = "ResourceCosts"
with open("before.cfg", "rt") as fin:
with open("after.cfg", "wt") as fout:
for line in fin:
fout.write(line.replace(key, ''))
我应该像readlines()那样将整个文件列在一个列表中吗。是不是意味着它会把所有的东西都载入记忆?你知道吗
我对python(以及一般的代码)还不是一个完全的新手,但是我真的很想得到一些建议,或者至少能指导我正确地了解在这种情况下应该寻找什么。你知道吗
谢谢你!!你知道吗
乔丹·辛格+1。如果您担心内存占用,请改用yield:
这将允许您独立地处理每一行,而不必一次将整个文件读入内存。你知道吗
如果你想要更像Python的东西:
您可以简单地检查行中是否包含您的密钥
相关问题 更多 >
编程相关推荐