Поменять символы местами питон

как поменять местами два символа в строке Python

Мне было интересно, как поменять местами два символа в строке. Вот некоторые примеры:

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

Этот код сравнивает две строки, str1 и str2, и проверяет, совпадают ли они, меняя местами символы.

ТАКЖЕ, есть ли способ получить список результатов вместо их печати?

как ты попал из west в eswt поменяв местами два символа? — Doboy

Определите «своп». Это домашнее задание? — John Machin

вы меняете местами два символа рядом, проходя по строке. так что поменяйте местами [0] и [1], затем [1] [2], затем [2] [3] и т. д. — Jerry

3 ответы

s = 'wing' s = 'west' l = [x for x in s] for i in xrange(len(s)-1): l[i], l[i+1] = l[i+1], l[i] print "".join(l) 

ответ дан 18 мар ’12, в 00:03

ок, круто! Это прекрасно! вместо того, чтобы печатать его, мне просто нужен результат каждой итерации цикла, я просто добавляю » .join (l) к локально определенной переменной? — Джерри

Это просто l = list(s) , нет необходимости в понимании списка. — AGF

Чтобы создать все возможности, мы можем использовать:

s = "yourstring" for i in range(0,len(s)-2): if i>0: print s[:i]+s[i+1:i-1:-1]+s[i+2:] else: print s[1]+s[0]+s[2:] 

ответ дан 18 мар ’12, в 00:03

Поскольку вы действительно хотите сравнить две строки, чтобы увидеть, «одинаковы ли они, поменяв местами два символа», вам на самом деле не нужно генерировать все возможные комбинации, вместо этого вы можете перебирать каждый из символов в каждой из строк и гарантировать что не более двух из них не равны.

Читайте также:  Aim cfg and css

Это можно сделать следующим образом:

def twoCharactersDifferent(str1,str2): if sorted(str1) != sorted(str2): #they must contain the same letters, exactly! return False numDifferent = 0 for i in range(len(str1)): numDifferent += (str1[i] != str2[i]) if numDifferent >2: return False return True print twoCharactersDifferent('wings','winxg') 

ответ дан 18 мар ’12, в 00:03

Источник

Поменять местами первую и последнюю буквы каждого слова в строке

Дана строка символов, состоящая из произвольного текста на английском языке,
слова разделены пробелами. Поменять местами первую и последнюю буквы каждого
слова.
Знаю, как написать программу , которая заменяет 1 и 3 букву в каждом слове , но как заменить первую и последнюю ? Помогите , ниже привожу текст программы по замене 1 и 3 буквы .

s = raw_input() d = s.split() result = [] for i in d: result.append(i[2] + i[1] + i[0] + i[3:]) print result

Поменять местами 1-ю и 3-ю буквы каждого слова в строке
Дана строка символов, состоящая из произвольного текста на английском языке, слова разделены.

Поменять местами первую и последнюю буквы каждого слова
Полное условие: Дана строка символов, состоящая из произвольного текста на английском языке, слова.

Поменять местами первую и последнюю буквы каждого слова
8. З клавіатури вводиться текстовий рядок. Скласти програму, яка міняє місцями першу і останню.

Поменять местами первую и последнюю буквы каждого слова
Помогите разобраться с задачей. Дана строка символов, состоящая из текста, слова которого.

s = input() d = s.split() result = [] for i in d: result.append(i[-1] + i[1:-1] + i[0]) print(result)

Эксперт Python

#!/usr/bin/env python3 import re t = 'In a shell script, you may want to use indentation to make the code readable, however this can have the undesirable effect of indenting the text within your here document. In this case, use t2 = re.sub(r'\b(\w)(\w*)(\w)\b', r'\3\2\1', t) print(t2)

Доброго времени суток!
Подскажите пожалуйста, а как в похожей ситуации поменять местами четные и нечетные буквы местами?

Эксперт Python

Поменять местами первую и последнюю буквы каждого слова
Дана строка символов, состоящая из произвольного текста на английском языке, слова разделены.

Поменять местами первую и последнюю буквы каждого слова
В каждом слове текста, содержащем не менее трех букв, поменять местами первую и последнюю буквы.

Поменять местами первую и последнюю буквы каждого слова
Дана строка символов, состоящая из произвольного текста на английском языке, слова разделены.

Поменять местами первую и последнюю буквы каждого слова
Дана строка символов, состоящая из произвольного текста на английском языке, слова разделены.

Поменять местами первую и последнюю буквы каждого слова
Дана строка символов, состоящая из произвольного текста на английском языке, слова разделены.

Поменять местами первую и последнюю буквы каждого слова.
Описание к разработке задания: Разработать алгоритм и программу согласно индивидуальному заданию.

Источник

Как поменять местами первые и последние символы из ввода в Python

Я новичок в программировании, изучаю Python3 из онлайн-курса. Это упражнение просит меня написать программу, которая читает строку, используя input() и выводит ту же строку, но с замененным первым и последним символом (пример: Fairy становится yairF). Вероятно, существует более простой способ сделать это с более продвинутыми функциями, однако для целей этого упражнения я должен писать программу, используя только классы, подстроки и индексы. Вот что у меня сейчас:

myString = input() newString = (myString[1:len(myString)-1]) print(myString[len(myString)-1],newString,myString[0]) 

Используя пример ввода «Фея», он выводит «y air F», а это не то, что я ищу. Я тоже пробовал

myString = input() newString = (myString[1:len(myString)-1]) newString[0] = myString[len(myString)-1] newString[len(newString)-1] = myString[0] print(newString) 

Тем не менее, третья строка дала мне: TypeError: ‘str’ object does not support item assignment , Поэтому я предполагаю, что не могу присвоить новые значения местам в индексе. Мой другой подход, приведенный ниже, также дал мне ошибку:

myString = input() newString = (myString[1:len(myString)-1]) lastString = str(myString[len(myString)-1],newString,myString[0]) print(lastString) 

Третья строка дала мне: TypeError: decoding str is not supported так что, похоже, я не могу объединить их таким образом. Любые советы по обращению с этим?

Источник

Оцените статью