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

В слове поменять местами части до и после дефиса

19.02.2022, 12:38. Показов 9698. Ответов 11

Студворк — интернет-сервис помощи студентам
В слове, записанном через дефис, поменять местами части до и после дефиса.

Приме:
Ввод
кошки-мышки

Вывод
мышки-кошки

Примечания!!!
Нельзя использовать методы строк.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
19.02.2022, 12:38
Ответы с готовыми решениями:

Значением строки служит слово, содержащее дефис. Поменять местами части слова, стоящие до и после дефиса
Значением строки служит слово, содержащее дефис. Поменять местами части слова, стоящие до и после дефиса.

Поменять местами слова до и после дефиса
3.В консоли разработать приложение, считайте текст указанный пользователем, иоминяты местами слово до и после дефиса.

Строки. Поменять местами части предложения до и после тире.
Значение строки служит предложение содержащее "-". Требуется поменять местами части предложенипя до и после "-". Предложение:...

11
Заблокирован
19.02.2022, 12:59
Лучший ответ Сообщение было отмечено PavelHard как решение

Решение

Python
1
2
3
4
5
6
7
8
9
10
#s='кошки-мышки'
s=input('s=')
s1=s2=''
f=False
for c in s:
    if c=='-': f=True
    elif not f:
        s1+=c
    else: s2+=c
print(s2+'-'+s1)
2
1 / 1 / 0
Регистрация: 17.07.2023
Сообщений: 36
18.07.2023, 15:15
Я не много по-другому сделал, но также использовал булевские тип данных
Python
1
2
3
4
5
6
7
8
9
10
11
12
13
14
s = input()
s1 = ''
s2 = ''
flag = True
for i in range(len(s)):
    if s[i] == '-':
        flag = False
    if flag:
        s1 += s[i]
    elif s[i] != '-':
        s2 += s[i]
    elif s[i] == '-':
        s3 = s[i]
print(s2 + s3 + s1)
0
Вирусоборец
 Аватар для thyrex
14445 / 7486 / 1580
Регистрация: 06.09.2009
Сообщений: 27,129
18.07.2023, 17:31
Python
1
2
3
4
5
6
7
8
9
10
11
12
s = input()
s1 = ''
i = 0
while s[i] != '-':
    s1 += s[i]
    i += 1
s1 = '-' + s1
i = len(s)-1
while s[i] != '-':
    s1 = s[i] + s1
    i -= 1
print(s1)
2
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,706
18.07.2023, 17:45
Python
1
2
3
4
5
6
7
8
9
10
11
s = list(input('->'))
L = R = ''
i = 0
while s[i] != '-':
    L += s[i]
    i += 1
i = -1
while s[i] != '-':
    R = s[i] + R
    i -= 1
print(R + '-' + L)
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
18.07.2023, 18:47
вотже некропостеры...
Python
1
2
3
import re
s = input()
print(re.sub(r'^([^-]+)-(.+)$', r'\2-\1', s))
2
 Аватар для s_t_r_a_j
526 / 179 / 58
Регистрация: 12.02.2023
Сообщений: 641
18.07.2023, 19:39
Python
1
2
3
4
5
6
7
8
9
10
11
s = 'кошки-мышки'#input('=> ')
 
r = l = []
for i in range(len(s)):
    if s[i] != '-':
        l += [s[i]]
    else:
        r = l
        l = []
l += ['-'] + r
print(''.join(l))
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
19.07.2023, 01:02
Python
1
2
3
4
5
6
7
8
>>> s = "abc-def"
>>> x = s.index("-")
>>> a = s[:x]
>>> b = s[x + 1:]
>>> ss = "%s-%s" % (b, a)
>>> print(ss)
def-abc
>>>
0
Вирусоборец
 Аватар для thyrex
14445 / 7486 / 1580
Регистрация: 06.09.2009
Сообщений: 27,129
19.07.2023, 01:04
easybudda,
Цитата Сообщение от PavelHard Посмотреть сообщение
Нельзя использовать методы строк.
0
Модератор
Эксперт PythonЭксперт JavaЭксперт CЭксперт С++
 Аватар для easybudda
12843 / 7592 / 1766
Регистрация: 25.07.2009
Сообщений: 13,973
19.07.2023, 01:10
thyrex, ну в Python методы строк часто с методами массивов переплетаются. Да и на вопрос полуторагодичной давности уже как могли, ответили. Теперь не важно. Как по мне, лучший ответ в 6-ом посте дан. Вопрос, можно ли регулярные выражения "методами строк" считать...
0
3750 / 1944 / 612
Регистрация: 21.11.2021
Сообщений: 3,706
19.07.2023, 02:39
Цитата Сообщение от easybudda Посмотреть сообщение
Вопрос, можно ли регулярные выражения "методами строк" считать...
Ну, мне кажется, что запрет на методы строк для того, чтобы люди именно в дебильном питоне потренировались.
0
Любознательный
 Аватар для YuS_2
7405 / 2255 / 360
Регистрация: 10.03.2016
Сообщений: 5,216
19.07.2023, 07:46
Цитата Сообщение от easybudda Посмотреть сообщение
Вопрос, можно ли регулярные выражения "методами строк" считать...
вряд ли... скорее всего, имелись в виду методы отсюда:
Python
1
dir(str)
а так, обычная ситуация, от гениальных изобретателей задач со связыванием рук за спиной, завязыванием глаз и затыканием ушей... ну, чтобы жизнь малиновым вареньем не казалась...
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
19.07.2023, 07:46
Помогаю со студенческими работами здесь

Поменять местами части строк до заданного символа и после него (без Copy)
Написал программу, которая меняет части строк до появления заданного символа и после. Нужна программа чтобы без использования <copy>,...

Поменять местами 2ю букву в слове на 5ю в каждом слове предложения.
нужно поменять местами 2 букву в слове на 5 в каждом слове предложения))))))) clc clear x= L=length(x); r1=int8(x); k=0; for...

Разбить массив на три части и в каждой части поменять местами наибольший элемент с наименьшим.
Дан массив X(N) (причем количество элементов массива кратно трем). Разбить массив на три части и в каждой части поменять местами наибольший...

Матрица. поменять местами max 1 части и min 3 части
матрица. поменять местами max 1 части и min 3 части

Матрица. Поменять местами max 1 части и min 3 части
Матрица. Поменять местами max 1 части и min 3 части надо исходную кв.матрицу в stringgrid1 и полученную в stringgrid2 и чтоб...


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

Или воспользуйтесь поиском по форуму:
12
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru