Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何修复此文件&书信电报;字符串>&引用;python中的错误_Python_Websphere_Jython_Wsadmin - Fatal编程技术网

如何修复此文件&书信电报;字符串>&引用;python中的错误

如何修复此文件&书信电报;字符串>&引用;python中的错误,python,websphere,jython,wsadmin,Python,Websphere,Jython,Wsadmin,我试着编写这个简单的脚本,并在for循环中抛出下面的错误 WASX7017E: Exception received while running file "/abc/websphere/wasad/createusers.py"; exception information: com.ibm.bsf.BSFException: exception from Jython: Traceback (innermost last): File "<string>", line 22,

我试着编写这个简单的脚本,并在for循环中抛出下面的错误

WASX7017E: Exception received while running file "/abc/websphere/wasad/createusers.py"; 
exception information: com.ibm.bsf.BSFException: exception from Jython:
Traceback (innermost last):
File "<string>", line 22, in ?
AttributeError: __getitem__

filename=sys.argv[0]
file_read= open( filename)   ---- this is line 22
for row in file_read:

看起来您希望迭代文件中的每一行。Python中的
open
方法返回一个file对象。如果要迭代文件中的每一行,需要调用
readlines
来检索文件的内容,然后循环该行

这应该起作用:

import sys

filename="/usr/websphere/onefolder/Userlist.txt"
fileread = open(filename, 'r')

filelines = fileread.readlines()  

for row in filelines:
   column=row.strip().split(';')
   user_name=column[0]
   pass_word=column[1]
   AdminTask.createUser(['-uid',user_name, '-password', pass_word, '-confirmPassword',   pass_word])
   AdminTask.mapUsersToAdminRole(['-roleName','Administrator','-userids',user_name])
   AdminTask.addMemberToGroup('[-memberUniqueName user_name,o=defaultWIMFileBasedRealm -groupUniqueName cn=webarch,o=defaultWIMFileBasedRealm]')

fileread.close()

AdminConfig.save()

print 'Saving Configuration is completed'

看起来您希望迭代文件中的每一行。Python中的
open
方法返回一个file对象。如果要迭代文件中的每一行,需要调用
readlines
来检索文件的内容,然后循环该行

这应该起作用:

import sys

filename="/usr/websphere/onefolder/Userlist.txt"
fileread = open(filename, 'r')

filelines = fileread.readlines()  

for row in filelines:
   column=row.strip().split(';')
   user_name=column[0]
   pass_word=column[1]
   AdminTask.createUser(['-uid',user_name, '-password', pass_word, '-confirmPassword',   pass_word])
   AdminTask.mapUsersToAdminRole(['-roleName','Administrator','-userids',user_name])
   AdminTask.addMemberToGroup('[-memberUniqueName user_name,o=defaultWIMFileBasedRealm -groupUniqueName cn=webarch,o=defaultWIMFileBasedRealm]')

fileread.close()

AdminConfig.save()

print 'Saving Configuration is completed'

请在你的问题中发布Python代码。你应该编辑问题而不是回复评论。ThanksIndentation在python中很重要,它是如何定义代码块的。修正你的缩进,它是工作的。我刚刚修改了for循环的缩进…你能具体说明所有要修改的行是什么吗?不能说。什么是管理任务?当出现错误时,代码中的哪一行被执行?管理任务Websphere命令创建用户,我得到的错误正好是“for row in fileread:”请在您的问题中发布Python代码。你应该编辑问题而不是回复评论。ThanksIndentation在python中很重要,它是如何定义代码块的。修正你的缩进,它是工作的。我刚刚修改了for循环的缩进…你能具体说明所有要修改的行是什么吗?不能说。什么是管理任务?当出现错误时,代码中的哪一行被执行?管理任务Websphere命令创建用户,我得到的错误正好是“for row in fileread:”