#python #indexing #attributeerror
#python #индексирование #ошибка атрибута
Вопрос:
Я застрял здесь…
Подключение к t3: //localhost: 7001 с идентификатором пользователя weblogic … Успешно подключился к серверу администратора ‘examplesServer’, который принадлежит домену ‘wl_server’.
Предупреждение: Для подключения к серверу использовался небезопасный протокол. Для обеспечения безопасности в сети вместо этого следует использовать порт SSL или порт администратора.
[MBeanServerInvocationHandler]com.bea: Имя= mainWebApp, тип =AppDeployment ParcelLienData.war ParcelLienData Проблема с вызовом WLST — трассировки (самой последней): файл «D:RM-ShareRM-Scriptswl_deploy_localhost-WC.py «, строка 30, в ? Ошибка атрибута: индекс
Мой код выглядит следующим образом:
import sys
import getopt
import os
loadProperties(sys.argv[1] ".props")
connect(username,password,adminUrl)
cmd = "awk -F'Name=' '{print $2}' | awk -F',' '{print $1}'"
f = open(r'./applicationsList.txt','r')
#In Above line you can specify the Complete Path of the "applications.txt" as well
print f
for i in range(5):
line=f.readline()
line1=line[:-4]
line2=line1[:1]
#check if the service or application is already present on the server...
cd('AppDeployments')
myapps=cmo.getAppDeployments()
for dep_file in myapps:
print depfile
print line
print line1
print line2
num1=depfile.index(line2)
print num1
num2=depfile.index(",", num1)
print num2
appName=depfile[num1:num2]
print appName
if appName == "line1":
print Redeploy
elif appName != "line1":
print "Not deploying"
continue
else:
print Deploying
Пожалуйста, посоветуйте, где я ошибаюсь….
Спасибо….
Ответ №1:
Ошибка сообщает вам, что эта строка:
appName=dep_file[num1:num2]
Неверно. Вы уверены, что dep_file
объект может быть проиндексирован с помощью фрагмента?
Может быть, вам следует сначала вызвать getName()
on dep_name
?
Комментарии:
1. Эй, я очень новичок в python, не уверен, что вы имеете в виду, я нашел фрагмент кода, как показано ниже, в блоге …. который я хотел использовать и обновить в соответствии с моими требованиями … пожалуйста, помогите >>> line = ‘<b> (только слова): </b><цвет шрифта = «#0000FF»> ОСНОВНЫЕ ЭТАПЫ </font><br /><br />’ >>> line.index («B») 44 >>> line.index (» <«, 44) # 44 — это количество символов перед ДОЧЕРНИМИ ВЕХАМИ 59 >>> строка[44:59] «ДОЧЕРНИЕ ВЕХИ»
2. но это работает нормально, когда я передаю тот же набор команд в командной строке
3. Привет, Эли, спасибо за твое предложение, и ты прав, я использовал, как указано ниже, и это сработало .. спасибо. AppName=appLine.getName()