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

Как поменять буквы местами в питоне

  • автор:

поменять местами буквы в строке в python

Я пытаюсь переключить первый символ в строке и переместить его в конец строки. Ему нужно повторить поворот несколько раз. Например, rotateLeft(hello,2)=llohe .

Я пробовал делать

Правильно ли это, и как бы вы это сделали, если удалить последний символ и перенести его в начало строки?

3 ответа

Вы можете сократить его до

и просто используйте отрицательные индексы для поворота «вправо»:

Если вы хотите продолжать вращаться даже после превышения длины строки, используйте

чтобы вы получили

Я знаю, что это старый, но вы можете использовать collections.deque :

Единственная проблема с кодом, который вы опубликовали, заключается в том, что вы пытаетесь использовать «str» в качестве имени для строки. Это имя встроенной функции в Python и почему вы получаете ошибки. Подробнее: http://docs.python.org/library/functions.html#str Вы не можете использовать это как имя для чего-то.

Изменение имени строки, которую вы передаете rotateLeft, решит вашу проблему.

Python — поменять порядок букв в строке

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

0xdb's user avatar

Проблема в том, что в mass2 вы просто набиваете случайные символы из mass1 без учёта повторов (не проверяете, что символы уже были использованы)

В модуле random есть функция shuffle как раз для перемешивания:

Также, там же есть функция sample :

vp_arth's user avatar

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

Дизайн сайта / логотип © 2023 Stack Exchange Inc; пользовательские материалы лицензированы в соответствии с CC BY-SA . rev 2023.3.13.43310

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Как поменять местами буквы при вводе в python?

Затем поменять местами первую цифру с третьей и поменять местами вторую цифру с четвертой.

Да, это для класса программирования. Я пишу проект, и он занимает меня навсегда. — Pr0cl1v1ty

что ты пробовал? Почему это не сработало? Есть ли что-то конкретное, на чем вы застряли? — Doug T.

3 ответы

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

Например, s[0]+s[1]+s[2]+s[3]+s[4] «Привет» и s[2]+s[3]+s[0]+s[1]+s[4] это «llHeo».

Редактировать: swapped теперь пишется с большой буквы, только если s пишется с большой буквы

ответ дан 25 апр.

Хорошо, тогда как бы я вычел или изменил значение каждого введенного числа? — Pr0cl1v1ty

Это еще одно требование? Объясни подробнее, что ты имеешь в виду. — лекодспортиф

Да, поэтому мы пытаемся зашифровать данные здесь. Я хочу знать, как изменить значения. — Pr0cl1v1ty

Вы можете просто изменить значения s и swap_seq . Для чего-то более автоматического реальный вопрос заключается в том, как вы хотите определить последовательность обмена. — лекодспортиф

Это нетривиально. Это можно сделать с помощью индексации и нарезки строк. Но вам также придется учитывать капитализацию и сохранять ее.

Поменяйте местами первое с третьим и поменяйте корпус

Поменять местами вторую с четвертой

Превратите его обратно в строку

Это не будет работать для всех случаев, но в этом конкретном случае это то, о чем вы просили.

Редактировать: Сделав шаг вперед с помощью функции:

ответ дан 25 апр.

Что ты имеешь в виду? Вы должны быть более конкретными! — джатанизм

кажется, что это список только для одного слова, что, если бы кто-то ввел другое слово. — Pr0cl1v1ty

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

Мы можем поменять местами две буквы в слове с помощью индексации и нарезки. Например, чтобы поменять местами первую и последнюю букву слова «Код», проверьте следующий код.

О / р: — «Eodc»

И этот код можно применить универсально к любому слову, независимо от длины этого слова. Также, изменив номер индекса. вы можете изменить буквы, которые хотите поменять местами, следующим образом:

Урок 4
Работа со строками

Logo Python Course Lesson 4

Последовательности в Python
Последовательность(Sequence Type) — итерируемый контейнер, к элементам которого есть эффективный доступ с использованием целочисленных индексов.

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

    — изменяемая — неизменяемая — неизменяемая
  1. Строка (str, unicode) — неизменяемая

2. С помощью тройных кавычек.
Главное достоинство строк в тройных кавычках в том, что их можно использовать для записи многострочных блоков текста. Внутри такой строки возможно присутствие кавычек и апострофов, главное, чтобы не было трех кавычек подряд. Пример:

Python Строки str создание

Two

Экранированные последовательности — это служебные наборы символов, которые позволяют вставить нестандартные символы, которые сложно ввести с клавиатуры.

В таблице перечислены самые часто используемые экранированные последовательности:

«Сырые строки»
Если перед открывающей кавычкой стоит символ ‘r’ (в любом регистре), то механизм экранирования отключается.
Это может быть нужно, например, в такой ситуации:
str = r’C:\new_file.txt’

Three

Python строки str методы

Итак, строки в Python поддерживают две группы методов:

    ( list ) ( tuple ) ( range ).
  1. Обработки двоичных данных( binary data ) и
  2. Текстовых строк( str ).

Four

Python строки str конкатенация умножение

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

1. Оператор сложения строк +
+ — оператор конкатенации строк. Он возвращает строку, состоящую из совокупности других строк.
Например:

Five

Срезы так же относятся к группе общих операций — они используются для всех последовательностей, а значит и для строковых переменных. Рассмотрим подробнее, что это такое и с чем его едят.

Срез (slice) — извлечение из данной строки одного символа или некоторого фрагмента подстроки или подпоследовательности.

Индекс — номер символа в строке (а также в других структурах данных: списках, кортежах). Обратите внимание, что нумерация начинается с 0 . Если указать отрицательное значение индекса, то номер будет отсчитываться с конца, начиная с номера -1 .

Есть три формы срезов:
1. Самая простая форма среза — взятие одного символа строки — S[i] , где S — строка, i — индекс. Пример:

Python строки str индексация

Задачи по темам

Six

Функции поиска
Как вы уже могли заметить, в Python существует две похожих функции для поиска подстроки — find() (относится к группе строковых методов) и index() (общий метод для SequenceType данных) . Разница в том, что find() вернет -1 , если не найдет искомое, а index() выкинет исключение ValueError .

Кроме того, необходимо помнить, что если нужно только удостовериться, что подстрока присутствует внутри строки — можно просто воспользоваться методом in :
>>> ‘Py’ in ‘Python’
True

Seven

Python строки str форматирование

В Python версии 3.6 был представлен новый способ форматирования строк. Эта функция официально названа литералом отформатированной строки, но обычно упоминается как f-string . Способов форматирования в Python довольно много, но работу с f-строками мы считаем самым удобным и перспективным способом, поэтому рассмотрим именно его.

Одной простой особенностью f-строк, которую вы можете начать использовать сразу, является интерполяция переменной. Вы можете указать имя переменной непосредственно в f-строковом литерале ( f’string’ ), и Python заменит имя соответствующим значением.

Например, предположим, что вы хотите отобразить результат арифметического вычисления. Это можно сделать с помощью простого print() и оператора , , разделяющего числовые значения и строковые:

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *