Форум сайта python.su
Приветствую, господа, товарищи и, уверен, будущие коллеги!
Освоение нового и совершенно неизвестного мне занятия под названием “программирование” я решил начать с Python (или Питон, как вам больше нравится))).
В настоящий момент занимаюсь по книге Доусона “Программируем на Python” (“Python programming for absolute beginner”).
Естественно, что по ходу знакомства с языком будут возникать те или иные вопросы, ответы на которые я надеюсь получить у Вас. Для чего и создаю эту тему.
Так что, тем, кто готов поделиться своими знаниями, добро пожаловать!
Как, впрочем, и всем остальным))
Офлайн
ogorelcevНу, давай, коль не шутишь.
Освоение нового и совершенно неизвестного мне занятия под названием “программирование”
Отредактировано py.user.next (Ноя. 22, 2015 00:05:42)
Офлайн
ogorelcev
ответы на которые я надеюсь получить у Вас. Для чего и создаю эту тему.
ogorelcevЭто не блог. На форуме создают одну тему под один вопрос/проблему.
Так что, тем, кто готов поделиться своими знаниями, добро пожаловать!
Офлайн
py.user.next
Ну, давай, коль не шутишь.
Возьми этот текст, который ты написал, и сделай с ним следующее: каждую первую букву в каждом слове сдвинь вправо по алфавиту. Регистр сохраняется.
Было:
“Приветствую, господа, товарищи”
Стало:
“Рриветствую, доспода, уоварищи”
На входе - строка с текстом, на выходе - строка с изменённым текстом.
Отредактировано ruskiy1 (Ноя. 23, 2015 13:52:45)
Офлайн
сгенерировать список из 20 елементов при помощи оператора random
каждый член должен быть целым числом в пределах от 1 до 50
после чего посчитать и вывести:
1. Список
2. количество четных членов
3. количество нечетных членов
4. Сумму первых и вторых
Офлайн
ZerGне совсем понятно что подразумевается под суммой первых и вторых, если сумма четных и не четных - это просто сумма всех чисел
сгенерировать список из 20 елементов при помощи оператора randomкаждый член должен быть целым числом в пределах от 1 до 50после чего посчитать и вывести:1. Список2. количество четных членов3. количество нечетных членов4. Сумму первых и вторых
import random s = [random.randint(1,50) for i in range(20)] d = {'even': 0, 'odd': 0} for x in s: if x % 2 == 0: d['even'] += 1 else: d['odd'] += 1 print("Список: {}".format(s)) print("Четных числел: {}, Нечетных чисел: {}".format(d['even'],d['odd'])) print("Сумма: {}".format(sum(s)))
Офлайн
ruskiy1Не, она даже не может его сообщение принять, прочитай условие.
за краткость не ручаюсь, но вроде бы отрабатывает правильно.
ruskiy1Она должна правильно транслировать любые тексты с любыми буквами. В этом и заключается программирование. Полурешения и недорешения не принимаются.
запиливай еще таких задач)
Офлайн
py.user.nextНе претендую на абсолютную универсальность (китайский, японский, арабский, иврит и др. языки не проверял). Но с английским, русским, украинским и греческим алфавитом работает вроде правильно. Проверял в консоли.
Она должна правильно транслировать любые тексты с любыми буквами. В этом и заключается программирование. Полурешения и недорешения не принимаются.
def ch1char(word): return chr(ord(word[0]) + 1) + word[1:] words = input("Введите текст: ").split() outputstring = list(map(ch1char, words)) print(' '.join(outputstring))
Офлайн
old_montyТа же самая ошибка, что и у ruskiy1. У вас у обоих принимается только первая строка, тогда как обработать надо всё сообщение ТСа. В условии же написано.
работает вроде правильно
ёжик
в 12 часов
несёт
яблоко
жжик
г 12 шасов
оесёт
аблоко
Отредактировано py.user.next (Ноя. 24, 2015 03:30:41)
Офлайн
py.user.next
Вот тебе ещё текст
ёжик
в 12 часов
несёт
яблоко
Должно получиться
жжик
г 12 шасов
оесёт
аблоко
import sys def replace1char(word): d = {'ё':'ж', 'я':'а', 'Ё':'Ж', 'Я':'А'} if word[0] in d: return d[word[0]] + word[1:] elif word.isnumeric(): return word else: return chr(ord(word[0]) + 1) + word[1:] print("Введите текст.\nДля окончания ввода используйте клавиши\nCtrl-D (UNIX) или Ctrl-Z (Windows):") inplist = [] outlist = [] for line in sys.stdin: inplist.append(line) for phrase in inplist: words = phrase.split() outlist.append(words) for elem in outlist: for word in elem: temp = replace1char(word) i = elem.index(word) elem.remove(word) elem.insert(i, temp) print(' '.join(elem))
Отредактировано old_monty (Ноя. 24, 2015 21:31:51)
Офлайн