在Python 2.4中,如何去掉';'后的字符?
假设我正在处理一个文件,这个文件用 ;
来表示注释。我不想解析这些注释。所以如果有一行看起来像这样:
example.com. 600 IN MX 8 s1b9.example.net ; hello!
有没有更简单或者更优雅的方法来去掉这些字符,而不是这样做:
rtr = ''
for line in file:
trig = False
for char in line:
if not trig and char != ';':
rtr += char
else:
trig = True
if rtr[max(rtr)] != '\n':
rtr += '\n'
8 个回答
4
对于Python 2.5或更高版本,我会使用partition
这个方法:
rtr = line.partition(';')[0].rstrip() + '\n'
20
只需要根据注释把这一行分开,然后取第一个元素就可以了。
line.split(";")[0]
139
我建议你可以这样说
line.split(";")[0]
这样做会让你得到一个字符串,里面包含了所有字符,直到第一个“;”字符为止,但不包括这个“;”。如果没有“;”这个字符,那就会返回整行内容。