Форум сайта python.su
Подскажите, пожалуйста, задача в следующем: имеется рабочий скрипт с несколькими функциями, требуется слить их в один блок, используя вложенные циклы. Начальный скрипт и свой вариант решения прикрепляю. Спасибо за помощь!
Прикреплённый файлы: Example.py (5,1 KБ)
Офлайн
BlackRabbit
требуется слить их в один блок, используя вложенные циклы
BlackRabbitтам аргумент ref лишний
Вопрос возникает в том месте, где нужно избавляться от строки с названием функции и ее аргументов.
Офлайн
Спасибо!
Офлайн
Можно еще один вопрос:
Вот перенес код из нижней функции в то место верхней, где она вызывается. А что делать с ее аргументами (someString.strip(), allRefs) ?
makeSeveralRefs(someString[:index].strip(), allRefs) firstDigitIndex = digitPattern.search(ref).start() author = ref[:firstDigitIndex] years = ref[firstDigitIndex:].split(', ') for year in years: allRefs.add(author + year)
Отредактировано BlackRabbit (Март 29, 2014 15:50:04)
Офлайн
def splitByColon(someString, allRefs): """Разделяет ссылку на автора/авторов и год.""" index = someString.find(':') if index > 0: ref = someString[:index].strip() firstDigitIndex = digitPattern.search(ref).start() author = ref[:firstDigitIndex] years = ref[firstDigitIndex:].split(', ') for year in years: allRefs.add(author + year) else: ref = someString.strip() firstDigitIndex = digitPattern.search(ref).start() author = ref[:firstDigitIndex] years = ref[firstDigitIndex:].split(', ') for year in years: allRefs.add(author + year)
Офлайн