:
runOutput = device[router].execute (cmd)
runOutput = output.split('\n')
print(runOutput)
for this_line,counter in enumerate(runOutput):
print(counter)
if re.search(r'dev_router', this_line) :
#want to use the counter to set something
다음과 같은 오류를 얻기. 교체 :
for this_line,counter in enumerate(runOutput):
로 :
for counter, this_line in enumerate(runOutput):
을 this_line
는 정수이고 re.search()
두 번째 인수로 문자열을 기대 때문에이 경우에 TypeError
을 얻고있다. 설명하기 위해 : 그런데
>>> import re
>>>
>>> this_line = 0
>>> re.search(r'dev_router', this_line)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "/Users/user/.virtualenvs/so/lib/python2.7/re.py", line 146, in search
return _compile(pattern, flags).search(string)
TypeError: expected string or buffer
을 PyCharm 같은 현대의 IDE는 정적으로 문제의이 종류를 감지 할 수 있습니다 :
이
(파이썬 3.5이 스크린 샷에 사용됩니다) 그리고 카운터는 다음과 같이 간단 할 수 있습니다 : before counter'counter = 0', 그리고'counter + = 1'과 일치하면 –