Форум программистов, компьютерный форум, киберфорум
Python для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.63/8: Рейтинг темы: голосов - 8, средняя оценка - 4.63
0 / 0 / 0
Регистрация: 08.07.2018
Сообщений: 7

Дешифрация строки, зашифрованной путем копирования повторов

08.07.2018, 16:23. Показов 1603. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
a = str(input())
b = ()
c = str
d = 0
while d != len(a): 
    while a(d).isdecimal == False: #1 таб
        b = b + a(d) #2 таба
        d+=1 #2 таба
    while a(d).isdecimal(): #1 таб
        c = c + a(d) #2 таба
        d+=1 #2 таба
    for i in range(c): # 1 таб
        print (b, end ='') # 2 таба
Цель: дешифрация строки, зашифрованной путем копирования повторов (пример: было - a4, стало - aaaa).
Как выделить синтаксис кода на форуме не знаю. Не получится сразу - прошу извинить.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
08.07.2018, 16:23
Ответы с готовыми решениями:

Вывести символы строки в порядке убывания количества повторов и указанием числа их повторов
Напишите пожалуйста алгоритм, к дополнению задачи:заполнить в массив только имеющиеся буквы. Задача:вводится строка, вывести символы...

Вводится строка, вывести символы строки в порядке убывания количества повторов и указанием числа их повторов
вводится строка, вывести символы строки в порядке убывания количества повторов и указанием числа их повторов

Сжатие массива путём удаления повторов
Здравствуйте, уважаемые специалисты. Проблема: есть табличка (2 столба*10 строк). В столбе № 1-фамилии (некоторые повторяются) В...

8
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
08.07.2018, 16:50
Цитата Сообщение от ipython Посмотреть сообщение
c = str
Каково предназначение этой строки?
Цитата Сообщение от ipython Посмотреть сообщение
b = ()
Каково предназначение этой строки?
Цитата Сообщение от ipython Посмотреть сообщение
c = str
str - это встроенная функция. Зачем ее присваивать переменной?
input и так возвращает исключительно строку и не нужно делать str(input())
0
 Аватар для Semen-Semenich
5224 / 3471 / 1173
Регистрация: 21.03.2016
Сообщений: 8,298
08.07.2018, 17:21
Лучший ответ Сообщение было отмечено mik-a-el как решение

Решение

вы сами понимаете что вы делаете в своем коде?
ну например что это c = str ?, тут while a(d).isdecimal вообще то индекс элемента так a[d].isdecimal,дальше вообще ерунда вы пытаетесь сложить кортеж b = () с элементом строки b = b + a(d)
Цитата Сообщение от ipython Посмотреть сообщение
Как выделить синтаксис кода на форуме не знаю
выделяете ваш код и тык на PYTHON вверху окна ввода сообщения
вариант в три строки
Python
1
2
3
4
5
6
>>> a = iter(input())
a2b3s1h5
>>> for i,x in zip(a,a):
    print(i*int(x),end = ' ')
 
aa bbb s hhhhh
1
Эксперт С++
1624 / 954 / 782
Регистрация: 06.02.2016
Сообщений: 2,452
Записей в блоге: 31
09.07.2018, 11:31
Лучший ответ Сообщение было отмечено Peoples как решение

Решение

Python
1
2
3
4
5
6
import re
 
s='a2b3s1h5'
nums=list(int(x) for x in re.findall(r'\d+',s))
letters=list(x for x in re.findall(r'[a-z]+',s,re.I))
print(*(x*y for x,y in zip(letters,nums)),sep='\n')
Python
1
2
3
4
s='a2b3s1h5'
nums=list(map(int,filter(str.isdigit,s)))
letters=list(filter(str.isalpha,s))
print(*(x*y for x,y in zip(letters,nums)),sep='\n')
0
0 / 0 / 0
Регистрация: 08.07.2018
Сообщений: 7
09.07.2018, 14:42  [ТС]
Для чего нужно re.I ? Я плохо знаком с регулярными выражениями, да и с python в целом, поэтому... Надеюсь объясните...
0
Эксперт С++
1624 / 954 / 782
Регистрация: 06.02.2016
Сообщений: 2,452
Записей в блоге: 31
09.07.2018, 14:47
Цитата Сообщение от ipython Посмотреть сообщение
re.I
Отключаем чувствительность к регистру символов
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
09.07.2018, 19:27
Цитата Сообщение от ipython Посмотреть сообщение
re.I
Другой синтаксис, который понимает большинство движков регулярок: (?i)
Python
1
2
>>> [m[0]*int(m[1]) for m in re.findall("(?i)([a-zа-я])(\d+)",s)]
['aa', 'bbb', 's', 'hhhhh']
Но движок re в python не понимает групповые флаги: (?imsx:Text) и не поддерживает их отключение через минус в таком синтаксисе.
0
0 / 0 / 0
Регистрация: 08.07.2018
Сообщений: 7
09.07.2018, 21:01  [ТС]
c = list(int(x)for x in re.findall(r' +', a, re.I))
Эту конструкцию, как и .findall можно использовать для поиска значений в ином виде записи, например: c = list(int(x)for x in re.findall(r'(a[i])+', a, re.I))
p.s Знаю, что вылезет ошибка.
0
Эксперт Python
5438 / 3859 / 1215
Регистрация: 28.10.2013
Сообщений: 9,552
Записей в блоге: 1
09.07.2018, 21:16
...
Python
1
[quote="Semen-Semenich;12528087"]выделяете ваш код и тык на PYTHON вверху окна ввода сообщения[/quote]
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
09.07.2018, 21:16
Помогаю со студенческими работами здесь

Дешифрование строки, зашифрованной при помощи таблицы
Дана строка, зашифрованная ее следующим методом: строка вписывается в таблицу размера 15х20 по строкам, а результат считывается по...

Написать функцию, выполняющую дешифрацию зашифрованной строки (string)
Задача: Написать функцию, которая шифрует содержимое заданного текстового файла, заменяя каждый его символ порядковым номером первого...

Строки. Определить, является ли заданный текст зашифрованной телеграммой
Определить является ли заданный текст зашифрованной телеграммой - т.е она состоит из слов, каждое из которых представляет набор из пяти...

Последствия переноса игр путем копирования
Здравствуйте! Установил новый жесткий диск под игры. Некоторые игры со старого харда перенес на новый путем копирования. Никаких...

Перенос массива из функции в функцию путём копирования
Столкнулся с тем, что массив оказывается пустым, когда я пытаюсь сделать так: **ArrayP = **Array; Где Array - заполненный массив, а...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Обработчик клика мыши в браузере ПК и касания экрана в браузере на мобильном устройстве
8Observer8 02.02.2026
Содержание блога Для начала пошагово создадим рабочий пример для подготовки к экспериментам в браузере ПК и в браузере мобильного устройства. Потом напишем обработчик клика мыши и обработчик. . .
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru