Как вывести алфавит в python
Перейти к содержимому

Как вывести алфавит в python

  • автор:

Проход по алфавиту Python

Можно ли как-то инкрементировать символ латинского алфавита? Нужно пройтись по алфавиту в Python, либо по числу получать какой-то определенный символ, есть такие функции?

Отслеживать
задан 11 сен 2016 в 17:47
2,798 1 1 золотой знак 16 16 серебряных знаков 32 32 бронзовых знака

сам новенький в питоне, но если нет то пишется ж просто a=tuple(‘abcdef. xyz’) вместо точек вставить все буквы алфавита и получите то, что вам надо.

11 сен 2016 в 18:06

1 ответ 1

Сортировка: Сброс на вариант по умолчанию

Получение символа по его номеру из Unicode:

>>> chr(65) 'A' >>> chr(122) 'z' >>> print(chr(128522)) �� 

(в Python 2 лучше вместо chr использовать unichr )

Получение номера из Unicode по символу:

>>> ord('A') 65 >>> ord('z') 122 >>> ord('��') 128522 

Заранее заготовленные строки с латинскими (и не только) символами есть в модуле string :

>>> import string >>> string.ascii_uppercase 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' >>> string.ascii_lowercase 'abcdefghijklmnopqrstuvwxyz' >>> string.ascii_letters 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' 

По этим строкам можно проходиться циклом:

for c in string.ascii_letters: print(c) 

Во всяких генераторных выражениях и условиях, разумеется, тоже:

>>> import string >>> s = 'fooУБРАТЬbarОТСЮДАbazНЕЛАТИНСКОЕ' >>> s2 = ''.join(c for c in s if c in string.ascii_letters) >>> print(s2) foobarbaz 

Вывод букв русского алфавита

Author24 — интернет-сервис помощи студентам

В тексте найти символы, отличные от букв латинского алфавита и цифр
Здравствуйте. Есть задание: разработать программу, которая присваивает некоторой переменной.

Функции кодирования и декодирования текста циклическим сдвигом букв алфавита
Не понимаю как написать. Задача: Реализовать функции кодирования и декодирования текста.

Генератор имен путем случайного выбора гласных и согласных букв алфавита из соответствующего массива
Генератор имен путем случайного выбора гласных и согласных букв алфавита из соответствующего.

3242 / 1638 / 546
Регистрация: 21.11.2021
Сообщений: 3,242

Лучший ответ

Сообщение было отмечено zss как решение

Решение

1 2 3 4
for i in range(ord('а'), ord('я')+1): print(chr(i), end=' ') if i == ord('е'): print('ё', end=' ')

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

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

Сгенерируйте и выведите: Случайную строку, состоящую из 5 символов, содержащую заглавные буквы русского алфавита
***5***Сгенерируйте и выведите: Случайную строку, состоящую из 5 символов, содержащую только.

Определить, что во введенном тексте содержатся символы отличные от букв латинского алфавита и цифр
Используя множества. Разработать программу, которая присваивает некоторой переменной значение.

Вывод алфавита Tkinter
te=0 after_id = » def alf(): global te, after_id after_id=window.after(1000,alf).

Или воспользуйтесь поиском по форуму:

Как вывести алфавит в python

И не только. Т.о. можно получить строку нужных символов.
Строку можно сделать и свою.

2. Строку преобразуем в список и перемешиваем список

import random mystr = ' ' lst = list(mystr) nlist = random.shuffle(lst)

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

Форумчанин
Регистрация: 17.06.2012
Сообщений: 952

Python выводит 10 случайных символов благодаря chr()

import random N=10 c=0 while c

или проще 1 строка

import random; print(chr(random.randrange(65,91)))

помню задумывалась тема про заполнение массивов случайными
и алгоритмы есть на нескольких ЯП
Последний раз редактировалось сфинкс; 06.08.2022 в 13:19 .
Форумчанин
Регистрация: 04.11.2016
Сообщений: 355
Сообщение от ViktorR
1. В Python есть модуль string. В этом модуле есть готовые наборы символов, например:

import string whitespace = ' \t\n\r\v\f' ascii_lowercase = 'abcdefghijklmnopqrstuvwxyz' ascii_uppercase = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'

И не только. Т.о. можно получить строку нужных символов.
Строку можно сделать и свою.

2. Строку преобразуем в список и перемешиваем список

import random mystr = ' ' lst = list(mystr) nlist = random.shuffle(lst)

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

код проверил. Но код выводит пустоту

мой блог :patreon.com/hopkins1988 . facebook группы:"программирование на Андроид","
"Программирование чистый код"

Lektorfuja
Посмотреть профиль
Найти ещё сообщения от Lektorfuja

Как вывести алфавит в python

Выведите все символы ASCII с кодами от 33 до 126 и их коды в следующем виде:

! 33 " 34 # 35 . > 125 ~ 126

B: От омеги до коппы

Напишите программу, которые выводит исторические кириллические символы, начиная с омеги и заканчивая коппой.

Программа должна вывести заглавные буквы, их коды — чётные числа от 1120 до 1152, разделяя символы пробелом.

Ѡ Ѣ Ѥ Ѧ Ѩ Ѫ Ѭ Ѯ Ѱ Ѳ Ѵ Ѷ Ѹ Ѻ Ѽ Ѿ Ҁ

С: Следующий символ

Дан один символ. Выведите следующий за ним символ в таблице ASCII.

D: Символы в заданном интервале

Выведите подряд, без пробелов, все символы, лежащие в таблице ASCII между двумя заданными символами.

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

ABCD
0123456789

E: isdigit

Для данного символа проверьте, является ли он цифрой.

Решение оформите в виде функции isdigit(c: str) -> bool .

На проверку сдайте только тело функции.

В решении нельзя использовать циклы условную инструкцию. В решении нельзя использовать константы с неочевидным значением типа 48 или 57. Да и функция ord тоже не нужна.

isdigit('0')
True
isdigit('A')
False

Для тех, кто решил эту задачу. У строк в языке Python есть метод isdigit() , то есть использовать его нужно так: s.isdigit() . Если длина строки больше 1, то метод возвращает True , если все символы строки являются цифрами.

Помимо этого есть методы isalpha , isupper , islower , проверяющие, является ли символ буквой, заглавной буквой, строчной буквой. Об этих и других методах можно прочитать в документации.

F: upper

Напишите функцию upper(c: str) -> str , которая переводит символ в верхний регистр, то есть для строчной буквы латинского алфавита возвращает сооветствующую заглавную букву латинского алфавита, а для остальных символов возвращает тот же символ.

На проверку сдайте только тело функции.

upper('f')
upper('F')
upper('4')

G: lower

Напишите функцию lower(s: str) -> str , которая переводит все символы данной строки в нижний регистр.

На проверку сдайте только тело функции.

lower('Hello, world!')
'hello, world!'

Для тех, кто решил эту задачу. У строк в языке Python есть методы upper() и lower() , аналогичные данным. Об этих и других методах можно прочитать в документации.

H: Палиндром

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

Решение оформите в виде функции is_palindrome(s: str) -> bool , возвращающей значение типа bool .

is_palindrome('Radar')
True
is_palindrome('True')
False

I: Значение выражения - 1

Дана непустая строка, состоящая из \(n\) цифр (т.е. однозначных чисел), между которыми стоит \(n-1\) знак операции, каждый из которых может быть либо +, либо -. Вычислите значение данного выражения.

Решение оформите в виде функции evaluate(s: str) -> int , получающей в качестве аргумента строку и возвращающую ее значение.

На проверку сдайте только тело функции. Решение должно иметь сложность \(O(n)\), где \(n\) — длина строки.

evaluate('1+2-3')

J: Значение выражения - 2

Дано выражение одно из следующих видов: \(A+B\), \(A-B\) или \(A\ast B\), где \(A\) и \(B\) — целые неотрицательные числа. Определите значение этого выражения.

Решение оформите в виде функции evaluate(s: str) -> int , получающей в качестве аргумента строку и возвращающую ее значение.

На проверку сдайте только тело функции.

evaluate('2*2')
evaluate('100-101')

K: Количество слов

Дана строка, возможно, содержащая пробелы. Определите количество слов в этой строке. Слово — это несколько подряд идущих букв латинского алфавита (как заглавных, так и строчных).

Решение оформите в виде функции count_words(s: str) -> int , возвращающее значение типа int .

На проверку сдайте только тело функции.

count_words('Yesterday, all my troubles seemed so far away')

L: Самое длинное слово

Дана строка. Найдите в этой строке самое длинное слово и выведите его. Если в строке несколько слов одинаковой максимальной длины, выведите первое из них. Решение оформите в виде функции longest_word(s: str) -> str , возвращающей значение типа str . Если в строке нет ни одной буквы, функция возвращает пустую строку.

На проверку сдайте только тело функции.

longest_word('In a hole in the ground there lived a hobbit.')
'ground'

M: Слова с прописной буквы

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

Решение оформите в виде функции capitalize(s: str) -> str .

На проверку сдайте только тело функции.

capitalize('In a hole in the ground there lived a hobbit.')
'In A Hole In The Ground There Lived A Hobbit.'

N: Максимальная буква

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

При решении задачи вам понадобятся методы строк, упомянутые раньше:

s.isalpha() — возвращает True или False , в зависимости от того, является ли символ буквой (все символы строки, если их несколько).

s.upper() — возвращает значение строки, переведённой в верхний регистр.

s.lower() — возвращает значение строки, переведённой в нижний регистр.

Решение оформите в виде функции max_char(s: str) -> str . Функция должна возвращать максимальную букву в верхнем регистре.

Если в данной строке нет символов, являющихся буквами, функция возвращает пустую строку.

На проверку сдайте только тело функции.

max_char('Встретив двусмысленность, отбрось искушение угадать.')

O: Частота появления букв

Дана программа, которая может содержать ASCII-символы и русские буквы. Посчитайте, сколько раз в этой строке встречается каждый возможный символ. Выведите все встречающиеся в этой строке символы в порядке возрастания их кодов, а затем количество вхождений этого символа. Пробелы при этом игнорируйте (считаются только символы, чьи коды больше 32).

Задача должна решаться за однократный проход по данной строке. Для этого создайте список count , в котором значение count[i] будет равно количеству вхождений символа chr(i) в данную строку.

Максимальный код символа русского алфавита равен 1105 (для буквы «ё»).

Встретив двусмысленность, отбрось искушение угадать.
, 1 . 1 В 1 а 2 б 1 в 2 г 1 д 2 е 4 и 3 к 1 л 1 м 1 н 3 о 3 р 2 с 6 т 5 у 3 ш 1 ы 1 ь 3

P: Самая частая буква

Дана строка содержащая буквы русского и латинского алфавитов и иные символы. Определите, какая буква (или какие буквы) в этой строке встречается чаще всего. При решении этой задачи заглавные и строчные буквы считаются одинаковыми, а прочие символы, не являющиеся буквами, не учитываются. Буква «Ё» в тексте не встречается. Заглавные и строчные буквы считаются одинаковыми.

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

При решении этой задачи нельзя пользоваться вложенными циклами. Входная строка должна обрабатываться за один проход.

Beautiful is better than ugly. Красивое лучше, чем уродливое.

Q: Анаграммы

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

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

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

Заглавные и строчные буквы в этой задаче считаются различными.

eleven_plus_two
twelve_plus_one
Eleven_plus_two
Twelve_plus_one

R: Пробелы после запятой

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

Question of Life,The Universe, and Everything
Question of Life, The Universe, and Everything

S: Шифр Цезаря

В шифре Цезаря каждый символ заменяется на другой символ, третий по счету в алфавите после данного, с цикличность. То есть символ A заменяется на D, символ B - на E, символ C - на F, . символ Z на C.

Дана строка, зашифруйте ее при помощи шифра Цезаря. Решение оформите в виде функции caesar_cipher(s: str, k: int) -> str , возвращающей новую строку. s — исходная строка, k — величина сдвига. Величина сдвига может быть произвольным целым числом, в том числе и отрицательным.

В тексте могут быть только заглавные английские буквы и символы ASCII, не являющиеся буквами.

caesar_cipher('IN A HOLE IN THE GROUND THERE LIVED A HOBBIT.', 3)
'LQ D KROH LQ WKH JURXQG WKHUH OLYHG D KREELW.'

T: Шифр замены - зашифровать сообщение

Шифр замены обобщение шифра Цезаря. Каждая буква сообщения меняется на какую-то другую букву (разные буквы меняются на разные буквы). Символы, не являющиеся буквами, остаются такими же. Ключом шифрования является перестановка: указание того, на какую букву должна быть заменена каждая другая буква.

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

Решение оформите в виде функции substitution_cipher(msg: str, key: str) -> str , возвращающей новую строку с зашифрованным сообщением. msg — исходное сообщение, key — ключ шифрования.

Ключ шифрования представляет собой строку длиной 26, являющейся перестановкой символов от A до Z. В строке последовательно записаны буквы, в которые переходят буквы A, B, C, . Z исходного сообщения.

substitution_cipher('IN A HOLE IN THE GROUND THERE LIVED A HOBBIT.', 'ABCDIFGHEJKLMNUPQRSTOVWXYZ')
'EN A HULI EN THI GRUOND THIRI LEVID A HUBBET.'

U: Шифр замены - расшифровать сообщение

Расшифруйте сообщение, зашифрованное шифром замены.

Решение оформите в виде функции substitution_decipher(msg: str, key: str) -> str , возвращающей новую строку с расшифрованным сообщением. msg — зашифрованное сообщение, key — ключ шифрования, заданный как в предыдущей задаче.

substitution_decipher('EN A HULI EN THI GRUOND THIRI LEVID A HUBBET.', 'ABCDIFGHEJKLMNUPQRSTOVWXYZ')
'IN A HOLE IN THE GROUND THERE LIVED A HOBBIT.'

V: Значение выражения - 3

Дана строка, содержащая одно или более целых неотрицательных чисел, разделенных знаками “+” или “-”. Вычислите значение этого выражения.

Решение оформите в виде функции evaluate(s) .

На проверку сдайте только тело функции.

evaluate('21+7-10')

W: 12-часовой формат времени

Во многих англоговорящих странах время записывается в 12-часовом формате с указанием одного из двух 12-часовых интервалов: до полудня (a.m.) или после полудня (p.m.). Формально запись времени в 12-часовом формате выглядит, как строка “h:mm x.m.”, где h — число часов от 1 до 12 (однозначное или двухзначное), mm — число минут от 00 до 59, дополненное нулями до двух разрядов, x — одна из двух букв “a” или “p”. Подробней примеры записи времени и их перевод в 24-часовой формат можно найти в википедии.

Дана строка с записью некоторого времени в 12-часовом формате. Выведите его в 24-часовом формате “hh:mm” (hh — количество часов от 00 до 23, дополненное нулями до двух разрядов, mm — количество минут от 00 до 59, дополненное нулями до двух разрядов).

1:00 a.m.
01:00
12:34 p.m.
12:34

X: IP-адрес

В сети интернет каждому компьютеру присваивается четырехбайтовый код, который принято записывать в виде четырех чисел, каждое из которых может принимать значения от 0 до 255, разделенных точками. Вот примеры правильных IP-адресов:

127.0.0.0 192.168.0.1 255.0.255.255

Программа получает на вход строку из произвольных символов. Если эта строка является корректной записью IP-адреса, выведите YES , иначе выведите NO .

127.0.0.1

Y: Детская задача

Хорошо известна задача-шутка, в которой требуется продолжить числовую последовательность:

1 11 21 1211 111221 312211 13112221 1113213211 .

Свойства данного ряда изучались математиками, а сама последовательность названа look-and-say sequence.

Напишите программу, которая по данному числу \(k\le 25\) выводит \(k\)-е число в этой последовательности.

1211

Z: Шифр перестановки

В шифре перестановки меняется порядок следования букв, но сами буквы не меняются. При шифровании сообщение разбивается на блоки длины \(n\), символы внутри блока переставляются в соответствии с ключом. Ключ — это перестановка длины \(n\).

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

Длина ключа может быть строкой длиной \(n\) (\(1 \le n \le 9\)), состоящей из неповторяющихся цифр от 1 до \(n\). Перестановка показывает, на какие позиции переходят символы блока с номерами 1, 2, . \(n\). То есть перестановка вида 51234 означает, что блок длины 5 циклически сдвигается вправо на 1 символ.

При шифровании сообщение разбивается на блоки длины \(n\), если длина сообщения некратна \(n\), то в конец сообщения дописываются точки.

Решение оформите в виде функции transposition_cipher(msg: str, key: str) -> str , где msg — исходное сообщение, key — ключ шифрования.

transposition_cipher('IN A HOLE IN THE GROUND THERE LIVED A HOBBIT', '312')
' INHA EOLN IH TGE URO NDETH REVLI EDHA BOB.IT'

ZA: Значение выражения — 4

Строка состоит из целых неотрицательных чисел, разделенных знаками операций “+”, “-” и “*”. Вычислите значение этого выражения выполняя действия по правилам арифметики.

Тесты к этой задаче закрытые.

10-2*3

YES , если слово является палиндромом и словов NO , если не является.

Решение оформите в виде функции IsPalindrome (S) . Длина входной строки может быть до \(10^6\) символов. При решении этой задачи нельзя пользоваться дополнительными строками и списками, модифицировать исходную строку.

Was it a rat I saw?
abca

Y: Календарь

Напечатайте календарь на месяц. Месяц может состоять из 28, 29, 30, 31 дня. Календарь на месяц состоит из 4, 5 или 6 столбцов, заполненных числами (датами). Ширина каждого столбца - два символа, между столбцами промежуток в один символ. Однозначные числа дополняются пробелом слева. Промежуток между столбцами - один пробел. В каждом столбце должно быть записано хотя бы одно число.

Программа получает на вход два числа - количество дней в месяце (от 28 до 31) и день недели, на которое приходится первое число месяца (от 1 до 7) и должна вывести календарь на указанный месяц.

31 3
6 13 20 27 
7 14 21 28
1 8 15 22 29
2 9 16 23 30
3 10 17 24 31
4 11 18 25
5 12 19 26

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

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