Поиск по сайту:

Программа Python для случайного ввода заглавных букв в строках


В этой статье мы узнаем, как случайным образом преобразовывать символы в верхний регистр в строках с помощью Python.

Используемые методы

Ниже приведены различные методы выполнения этой задачи:

  • Использование функций join(), choice(), Lower(), Upper().

  • Использование функций random.randInt() и random.sample().

  • Использование функций map(), choice(), zip()

Пример

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

Вход

inputString = 'tutorialspoint'

Выход

String after converting chars lower or uppercase randomly:
tUToriaLsPOINT

В этом примере мы преобразуем символы входной строки «tutorialspoint» в верхний регистр случайным образом.

Метод 1: использование функций join(), choice(), low и Upper.

lower — преобразует все символы верхнего регистра в строку в символы нижнего регистра.

Функция random.choice() (случайным образом выбирает элемент из последовательности, например списка, кортежа, диапазона чисел).

upper — преобразует все символы нижнего регистра в строку в символы верхнего регистра.

join() — join() — это строковая функция в Python, которая используется для объединения элементов последовательности, разделенных разделителем строк. Эта функция соединяет элементы последовательности для преобразования в строку.

Алгоритм (шаги)

Ниже приведены алгоритмы/шаги, которые необходимо выполнить для выполнения желаемой задачи.

  • Используйте ключевое слово import, чтобы импортировать функцию choice из модуля случайных чисел.

  • Создайте переменную для хранения входной строки.

  • Распечатайте входную строку.

  • Пройдитесь по каждому символу входной строки и случайным образом выберите символы верхнего или нижнего регистра, используя метод random.choice(). Здесь соединение используется для преобразования в строку

  • Распечатайте результирующую строку после случайного преобразования символов входной строки в верхний регистр.

Пример

Следующая программа возвращает строку после случайного преобразования символов входной строки в верхний регистр с помощью функций join(), random.choice(), low и Upper:

# importing choice from the random module
from random import choice

# input string
inputString = 'tutorialspoint'

# printing input string
print("Input String:", inputString)

# traversing through each character of a string and selecting

# either upper or lowercase char randomly using choice()

# here join is used to convert to a string
randchars_str = ''.join(choice((str.upper, str.lower))(char) for char in inputString)
   
# printing resultant string after converting chars lower or uppercase randomly
print("String after converting chars lower or uppercase randomly:\n", randchars_str)

Выход

При выполнении вышеуказанная программа сгенерирует следующий вывод:

Input String: tutorialspoint
String after converting chars lower or uppercase randomly:
tUTORIAlSPOInT

Способ 2. Использование функций random.randInt() и random.sample().

Метод random.randint(): возвращает случайное число в указанном диапазоне.

Метод random.sample(): возвращает список, содержащий случайно выбранное количество элементов из последовательности.

Синтаксис

random.sample(sequence, k)

Алгоритм (шаги)

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

  • Преобразуйте данную входную строку в список с помощью функции list().

  • Подсчитайте количество случайных индексов, которые необходимо преобразовать в верхний регистр, с помощью функции random.randInt().

  • Получите количество случайных элементов выше n от 0 до длины списка, передав длину списка и количество необходимых элементов в качестве аргументов функции random.sample().

  • Сохраните приведенные выше индексы в список, например, randomIndexList.

  • Пройдите через указанный выше randomIndexList, используя цикл for.

  • Преобразуйте строковый элемент по этому индексу в верхний регистр с помощью функции Upper().

  • Объедините все элементы списка и преобразуйте их в строку с помощью функции join().

  • Распечатайте результат.

Пример

Следующая программа возвращает строку после случайного преобразования символов входной строки в верхний регистр, используя –

import random
# input string
inputString = 'tutorialspoint'

# printing input string
print("Input String:", inputString)

# Converting string to list
stringList = list(inputString)

# Getting the number of random indexes to be modified to upper case
n = random.randint(0, len(stringList)-1)

# Getting above n number of random elements from 0 to the length of the list
randomIndexList = random.sample(range(0, len(stringList)-1), n)

# Traversing the above index list
for index in randomIndexList:
   
   # Converting the corresponding index string element to the upper case
   stringList[index] = stringList[index].upper()

# Joining all the list elements and Converting to string
result = ''.join(stringList)

# printing resultant string after converting chars lower or uppercase randomly
print("String after converting chars lower or uppercase randomly:\n", result)

Выход

При выполнении вышеуказанная программа сгенерирует следующий вывод:

Input String: tutorialspoint
String after converting chars lower or uppercase randomly:
tUToriaLsPOINT

Способ 3. Использование функций map(), choice(), zip().

Функция random.choice() (случайным образом выбирает элемент из последовательности, например списка, кортежа, диапазона чисел).

random.choice(sequence)

Функция zip() используется для объединения двух списков/итераторов.

Алгоритм (шаги)

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

  • Используйте ключевое слово import, чтобы импортировать функцию choice из модуля случайных чисел.

  • Заархивируйте нижний и верхний символы строки с помощью функции zip и выберите любой из них с помощью метода random.choice().

  • Примените это ко всем элементам строки с помощью функции map().

  • Преобразуйте этот объект карты в строку с помощью функции join().

  • Напечатайте результирующую строку после случайного преобразования символов входной строки в верхний регистр.

Пример

Следующая программа возвращает строку после случайного преобразования символов входной строки в верхний регистр с помощью функций map(), random.choice() и zip():

# importing choice from the random module
from random import choice

# input string
inputString = 'tutorialspoint'
print("Input String:", inputString)

# extending logic to each character using a map,

# and selecting upper or lower for each character
randchars_str = ''.join(map(choice, zip(inputString.lower(), inputString.upper())))

# printing resultant string after converting chars lower or uppercase randomly
print("String after converting chars lower or uppercase randomly:\n", randchars_str)

Выход

При выполнении вышеуказанная программа сгенерирует следующий вывод:

Input String: tutorialspoint
String after converting chars lower or uppercase randomly:
TutoRIaLsPoInt

Заключение

В этой статье мы узнали, как преобразовывать случайные заглавные буквы в строки, используя три разных подхода. Мы также узнали, как генерировать случайное целое число с помощью randInt(), генерировать n случайных чисел в виде списка с помощью sample() и выбирать один случайный элемент с помощью choice().

Статьи по данной тематике: