python 文件按行读写

# 1、w 写模式,它是不能读的,如果用w模式打开一个已经存在的文件,会清空以前的文件内容,重新写
#    w+ 是读写内容,只要沾上w,肯定会清空原来的文件
# 2、r 读模式,只能读,不能写,而且文件必须存在
#    r+ 是读写模式,只要沾上r,文件必须存在
# 3、a 追加模式,也能写,在文件的末尾添加内容
# 4、rb+、wb+、ab+,这种是二进制模式打开或者读取,一些音乐文件

 

按行写

f_proc_pid = open(proc_pid_path, "a+")
popen_pid = proc.pid
f_proc_pid.write(str(popen_pid))
f_proc_pid.write("\n")
f_proc_pid.close()

 

按行读

for line in open("/tmp/proc_pid.txt"):
n_pid = int(line.strip())

只读一行

f = open("/tmp/Servers_process.pid", "r")
    n_pid = int(f.read().strip())
    print (n_pid)
    f.close()

 

实例:masscan扫描结果处理

import re

with open('b.txt', 'a+') as k:
    with open('a.txt', 'rt') as f:
        for line in f:
            ip = re.search(r'\d+\.\d+\.\d+\.\d+',line).group(0)
            port = re.search(r'\d{1,5}',line).group(0)
            print (ip,":",port)
            web_path = "{0}:{1}".format(ip, port)
            
            k.write(web_path)
            k.write("\n")

f.close()
k.close()

 

你可能感兴趣的:(Python)