python newbie -
我有多个文本文档,其中包含来自多个AD组的用户,我需要解析每个文档并按用户组成员对用户(用户名)进行分组:例如: 营销文档有Marketing_grp:
John, Bob, Sally
Sales doc有Sales_grp:
Bob, Ron, Jeff
技术文档有Technology_grp:
Bob, Mike, Sally
我需要能够看到Bob和Sally都属于多个组,我需要知道这些组是什么,我如何用Python实现这一目标?
文本文件中的数据采用电子邮件地址的形式,如username@company.com
#AD Group Usage
import re
from sys import argv
import shelve
script, filename = argv
def ADgrps(filename):
f=open(filename, "r+")
text=f.read()
ad_grps = re.findall(r'[\w]+(?=@)', text)
return ad_grps
答案 0 :(得分:2)
我做这样的事情。
import re
import sys
groups = {}
for s in sys.argv[1:]:
with open(s) as f:
for t in re.findall(r"[\w]+(?=@)", f.read()):
if t in groups:
groups[t].append(s)
else:
groups[t] = [s]
# Do stuff with the data.
现在你有一个字典映射电子邮件到它们出现的文件。这段代码要求相关文件的名称作为命令行参数传递。