python 中提取包含指定字符串的数据
1、测试数据
root@PC1:/home/test2# ls a.txt root@PC1:/home/test2# cat a.txt d u s x e j z c e e f a x f e w f e
2、提取包含字符x的数据
root@PC1:/home/test2# ls a.txt test.py root@PC1:/home/test2# cat a.txt ## 测试数据 d u s x e j z c e e f a x f e w f e root@PC1:/home/test2# cat test.py ## python脚本 #!/usr/bin/python in_file = open("a.txt", "r") ## 打开原始数据 out_file = open("result.txt", "w") ## 打开计划写入的文件 lines = in_file.readlines() ## 将每行数据存储为列表 for i in lines: ## 对列表元素进行循环(行) if "x" in i: ## 使用if判断 out_file.write(i) ## 如果条件为true,写入该行 in_file.close() ## 关闭原始文件 out_file.close() ## 关闭写入文件 root@PC1:/home/test2# python test.py ## 运行python脚本 root@PC1:/home/test2# ls a.txt result.txt test.py root@PC1:/home/test2# cat result.txt ## 查看结果文件 x e j x f e
3、提取不包含x字符的数据
root@PC1:/home/test2# ls a.txt test.py root@PC1:/home/test2# cat a.txt ## 测试数据 d u s x e j z c e e f a x f e w f e root@PC1:/home/test2# cat test.py ## python脚本 #/usr/bin/python in_file = open("a.txt", "r") out_file = open("result.txt", "w") lines = in_file.readlines() for i in lines: if "x" not in i: out_file.write(i) in_file.close() out_file.close() root@PC1:/home/test2# python test.py ## 运行程序 root@PC1:/home/test2# ls a.txt result.txt test.py root@PC1:/home/test2# cat result.txt ## 查看结果 d u s z c e e f a w f e
4、同时提取包含x和w的数据
root@PC1:/home/test2# ls a.txt test.py root@PC1:/home/test2# cat a.txt d u s x e j z c e e f a x f e w f e root@PC1:/home/test2# cat test.py ## 同时提取包含x和w的行 #/usr/bin/python in_file = open("a.txt", "r") out_file = open("result.txt", "w") lines = in_file.readlines() for i in lines: if ("x" in i) or ("w" in i): out_file.write(i) in_file.close() out_file.close() root@PC1:/home/test2# python test.py root@PC1:/home/test2# ls a.txt result.txt test.py root@PC1:/home/test2# cat result.txt x e j x f e w f e