在我的 python 脚本中,我将 text_file 中的特定列写入 new_text_file 分隔,,
因为 new_text_file 稍后将成为 csv_file。new_text_file 中留下了空白行,因为我跳过了需要从文件中删除的行。
我不能使用.strip()
或.rstrip()
因为我收到错误:AttributeError: '_io.TextIOWrapper' object has no attribute 'strip'
.
我无法使用ip_file.write("".join(line for line in ip_file if not line.isspace()))
,因为我收到错误:UnsupportedOperation: not readable
.
我还尝试了导入sys
and re
,并尝试了在此站点上找到的所有其他答案,但它仍然返回错误。
我的代码是:
for ip in open("list.txt"):
with open(ip.strip()+".txt", "a") as ip_file:
for line in open("data.txt"):
new_line = line.split(" ")
if "blocked" in new_line:
if "src="+ip.strip() in new_line:
#write columns to new text file
ip_file.write(", " + new_line[11])
ip_file.write(", " + new_line[12])
try:
ip_file.write(", " + new_line[14] + "\n")
except IndexError:
pass
生成的 ip_file 如下所示:
, dst=00.000.00.000, proto=TCP, dpt=80
, dst=00.000.00.000, proto=TCP, dpt=80
, dst=00.000.00.000, proto=TCP, dpt=80
, dst=00.000.00.000, proto=TCP, dpt=80
, dst=00.000.00.000, proto=TCP, dpt=80
我在上述脚本的最后一行,在循环中进行编码。在我的脚本new_text_file
中ip_file
,一切都必须在 Python 中。
问题:还有其他方法可以删除 中的空行ip_file
吗?或者阻止它们被写入?