对文件中的ip取C段并去重写入文件

来源:互联网 发布:大数据编程 书籍推荐 编辑:程序博客网 时间:2024/06/05 15:34

实现功能:对ip.txt中的ip取C段并去重,写入新的txt文件中

#coding=utf-8#列表ipc用于存储对ip取前三位的C段结果ipc=[]with open("ip.txt","r") as f1:            for line in f1:                line=line.rstrip()                line=line.split('.')                ipc.append(line[0]+"."+line[1]+"."+line[2])            print ipc#set()对列表ipc去重ipc=set(ipc)print ipc#将列表ipc写入ipc.txt中with open("ipc.txt","a") as f2:    for ip in ipc:        f2.write(ip+"\n")


运行结果:输入文件ip.txt,输出文件ipc.txt为对ip.txt中ip取c段并去重后的结果

在执行set(ipc)前后的print ipc结果不同,第二次是去重后的ipc段

['110.75.139', '112.25.59', '112.25.59', '110.75.129', '110.75.144', '103.52.197', '110.75.129', '103.52.199', '140.205.76', '110.75.129', '110.75.129']['110.75.139', '112.25.59', '110.75.129', '110.75.144', '103.52.197', '103.52.199', '140.205.76']

上面使用了set()对列表做去重,比较方便,也可以使用for循环的方式

#coding=utf-8ipc=[]with open("ip.txt","r") as f1:            for line in f1:                line=line.rstrip()                line=line.split('.')                ipc.append(line[0]+"."+line[1]+"."+line[2])            print ipc#对ipc段的列表ipc使用for循环的方式去重,得到ip_quchongip_quchong=[]for ip in ipc:if ip in ip_quchong:passelse:ip_quchong.append(ip)print ip_quchongwith open("ipc.txt","a") as f2:    for ip in ip_quchong:        f2.write(ip+"\n")




原创粉丝点击