我正在使用
Users = win32net.NetGroupGetUsers(IP,'none',0),
获取系统上的所有本地用户。输出是一个元组,
(([{'name': u'Administrator'}, {'name': u'Guest'}, {'name': u'Tom'}], 3, 0),)
我想要清理它,所以它只打印出“Administrator,Guest,Tom”。我尝试使用strip和replace但你不能在元组上使用它们。有没有办法将其转换为字符串,以便我可以操纵它或者是否有更简单的方法去实现它?
答案 0 :(得分:4)
', '.join(user['name'] for user in Users[0][0])
答案 1 :(得分:4)
这不应该以逗号结尾:
Users = win32net.NetGroupGetUsers(IP,'none',0),
尾随逗号将结果转换为包含结果的单个项元组,该结果本身就是一个元组。
您想要的数据位于Users[0]
。
>>> print Users[0]
[{'name': u'Administrator'}, {'name': u'Guest'}, {'name': u'Tom'}]
要解压缩这个词典列表,我们使用生成器表达式:
Users = win32net.NetGroupGetUsers(IP,'none',0)
print ', '.join(d['name'] for d in Users[0])
答案 2 :(得分:2)
input = (([{'name': u'Administrator'}, {'name': u'Guest'}, {'name': u'Tom'}], 3, 0),)
in_list = input[0][0]
names = [x['name'] for x in in_list]
print names
[u'Administrator', u'Guest', u'Tom']