代码假设采用多个参数的字符串并用"Split()"拆分它们.它确实这样做,但它只将第一个参数传递给"CheckList()".因此,如果我输入"1 2 4",它只会将"1"传递给CheckList.其他一切都按预期工作.
import re
def CheckList(Start):
DoIt = 0
s = int(Start)
End = s + 1
End = str(End)
for PodCheck in F.readlines():
if re.match('Pod' + End, PodCheck.strip()):
DoIt = 0
if re.match('Pod' + Start, PodCheck.strip()):
DoIt = 1
if DoIt == 1:
print PodCheck,
return
def Split(P):
Pods = P.split()
for Pod in Pods:
CheckList(Pod)
return
F = open("C:\Users\User\Desktop\IP_List.txt")
Pod = raw_input('What pod number would you like to check?: ')
Split(Pod.strip())
print 'Done'
Run Code Online (Sandbox Code Playgroud) 代码工作正常.我刚才有一个效率问题.在这段代码中,我使用" try... except"来传递会导致程序崩溃的错误.该错误是由IP地址无法访问引起的.正如我之前所说,代码完成了它的工作.我想知道这是否是最快的方式来查看IP是否可以访问并将其传递出去.如果找不到IP,它会停止30到45秒.堆积了几次这可能相当费时.
import win32net
def GetUsers( IP ):
try:
Users = win32net.NetGroupGetUsers(IP,'none',0),
except:
print IP + ': Was not found!'
else:
print IP + ': ' + Users
return
F = open("C:\Users\*User*\Desktop\IP_List.txt")
for CurrentIP in F.readlines():
GetUsers(CurrentIP.strip()),
F.close()
print 'DONE!'
Run Code Online (Sandbox Code Playgroud) 我创建了一段python脚本,以检索网络上所有Windows机器的本地用户.我使用了win32net库.我现在需要为Mac和Linux机器执行此操作.我已经搜索了一段时间,但仍然只有一长串Mac和Linux用户组在我家附近见面.有没有人有一个建议的库来调查?