2014-11-17 1 views
0

Я только учусь основной питона для себя - и в надежде сделать несколько простых ..и я имею в виду простые сценарии, чтобы сделать несколько повторяющихся задачPython скрипт для зонирования WWN

Один из них районирования WWN для Cisco переходит в a SAN

Обычно нам нужны 2 WWN из 2 портов (то есть хост = 20: 00: 00: 00: 00: 00: 00: 00 + коробка Storgae = 50: 06: 01: 00: 00: 00 : 00: 00) После того, как мы, что мы делаем имя и добавить эту WWN к нему

zone name **host_Storage** 
Adding member: member pwwn 50:06:01:00:00:00:00:00 (ie Storage) 
Adding member: member pwwn 20:00:00:00:00:00:00:00 (ie host) 

Я в начале и хочу, чтобы получить вход в WWN и если его либо один из 2-х WWN чисел

  • 20: 00: 00: 00: 00: 00: 00: 00

Он всегда даст мне 2-ой формат,

т.е. 20: 00: 00: 00: 00: 00: 00: 00

Я нашел то, что делает это здесь: Inserting a character at regular intervals in a list

Но хотел бы получить эту работу в скрипте

Это работает ---

s = '10000000c9abcdef' 
':'.join(a + b for a, b in zip(*[iter(s)]*2)) 

'10:00:00:00:c9:ab:cd:ef' 

Это не работает (при попытке создать тип сценария) -

wwn = (input('Enter the WWN or q to quit- ')) 
':'.join(a + b for a, b in zip(*[iter(wwn)]*2)) 
+0

Кажется, что я отлично работаю, какая ошибка вы получаете (если есть) и какая версия Python вы используете (я принимаю 3+ из метода ввода)? Только потенциальная проблема, которую я вижу, заключается в том, что если вы введете число, уже обозначенное двоеточием, все равно будет вставлять их. –

+0

'' 'C: \ Python27> www.py ' '' Введите WWN или q в quit- 10000000c9abcdef '' 'Traceback (последний последний вызов): ' '' Файл 'C: \ Python27 \ www. ру», линия 3, в WWN = (вход ('введите WWN или ватную к quit-')) ' '' File "", строка 1 '' '10000000c9abcdef ^ ' '' SyntaxError: неожиданный EOF при синтаксическом анализе – olearydc

+0

Привет, fredtantini - пытался сделать код - но не выглядит великолепно выше :) – olearydc

ответ

0

вы можете использовать регулярные выражения, чтобы достигнуть того же самого:

import re 
wwn="5006010000000000" 
':'.join(re.findall('..', wwn)) 

'50:06:01:00:00:00:00:00' 
Смежные вопросы