Клуб для всех, кто интересуется языком программирования
Python
Для простоты поиска используются теги
Программа для имитации бросания игральных кубиков. Программа будет случайным образом генерировать два числа в диапазоне от 1 до 6 и показывать их.
import random
again = 'д'
while again.lower() == 'д':
print('Бросаем кубики... ')
print('Значения граней:')
print(random.randint(1, 6))
print(random.randint(1, 6))
again = input('Бросить кубики еще раз? (д = да, н = нет): ')
Десятикратное подбрасывание монеты:
import random
for _ in range(10):
num = random.randint(0, 1)
if num == 0:
print('Орел')
else:
print('Решка')
На этом сайте, чтобы сформировать список избранных (или забаненных) нужно делать список, который заносится по схеме: один никнейм на одной строке. Если никнеймов десяток, то можно просто скопировать список читателей(тот что у нас в «инфо» через запятую), и при помощи бекспейса и энтера всё сделать. Но если постоянных читателей 100 или больше, будет трудновато. Поэтому вот такая программа.
# получаем список никнеймов от пользователя
nicknames = input("Введите список никнеймов через запятую: ")
# разбиваем список на элементы и удаляем пробелы
nicknames_list = [nickname.strip() for nickname in nicknames.split(",")]
# сортируем список по возрастанию или по алфавиту
if nicknames_list[0][0].isdigit():
nicknames_list.sort(key=lambda x: int(x) if x[0].isdigit() else x)
else:
nicknames_list.sort()
# выводим список с никнеймами в отсортированном порядке
print("\n".join(nicknames_list))
Код для подсчета количества артиклей в тексте
vvod = input().lower().split()
print(f"Общее количество артиклей:{vvod.count('a') + vvod.count('an') + vvod.count('the')}")
Программа вычисляющая кол-во воскресений в году
import datetime
year = int(input("Веедите год и я скажу сколько в нем воскресений ")) # год
count = 0 # количество воскресений
for month in range(1, 13): # перебор месяцев
for day in range(1, 32): # перебор дней
try:
date = datetime.date(year, month, day) # формируем дату
if date.weekday() == 6: # если день недели - воскресенье
count += 1 # увеличиваем счетчик
except ValueError: # если дата неверная (такой день отсутствует в месяце)
break
print("Количество воскресений в", year, "году:", count) # выводим результат
Распаковка строки в Питоне происходит также как распаковка списка:
s = 'Python'
print(*s)
print()
print(*s, sep='\n')
Программа для удаления наибольшего и наименьшего значения из списка
kol = int(input())
chisl = []
for i in range(kol):
chisl.append(int(input()))
for a in chisl:
if a != min(chisl) and a != max(chisl):
print(a)
Код, который:
Выводит длину списка;
Выводит последний элемент списка;
Выводит список в обратном порядке (вспоминаем срезы);
Выводит YES если список содержит числа 5 и 17, и NO в противном случае;
Выводит список с удаленным первым и последним элементами.
numbers = [2, 6, 3, 14, 10, 4, 11, 16, 12, 5, 4, 16, 1, 0, 8, 16, 10, 10, 8, 5, 1, 11, 10, 10, 12, 0, 0, 6, 14, 8, 2, 12, 14, 5, 6, 12, 1, 2, 10, 14, 9, 1, 15, 1, 2, 14, 16, 6, 7, 5]
print(len(numbers))
print(numbers[-1])
print(numbers[::-1])
if 5 in numbers and 17 in numbers:
print('YES')
else:
print('NO')
del numbers[0]
del numbers[-1]
print(numbers)
Программа переводящая каждый введенный символ в соответствующий ему код из таблицы символов Unicode
vvod = input()
for i in range(len(vvod)):
print(ord(vvod[i]), end =' ')
Программа считывает строку и стирает все что между буквами h
(Если более точно — не стирает, а переписывает строку)
vvod = input()
first = vvod.find('h')
last = vvod.rfind('h')
between = vvod[first : last + 1]
print(vvod.replace(between, ''))
Вводим
маhaaewwsxddffrekkomkomkomkomkmkomkomkoml,,o,o,o,mimihма
Получаем
мама
Программа вычисляющая наибольшее количество одинаковых символов в строке
vvod = input()
colvo = 0
mnog = ''
for i in vvod:
if vvod.count(i) >= colvo:
colvo = vvod.count(i)
mnog = i
print(mnog)
Программа подсчитывает количество цифр в строке
vvod = input()
count = 0
for i in range(10):
count += vvod.count(str(i))
print(count)
Программа переводящая любое шестнадцатеричное число в двоичное
vvod = int(input())
dvoi = ''
while vvod > 0:
dvoi = str(vvod % 2) + dvoi
vvod //= 2
print(dvoi)
Программа, которая определяет количество гласных и согласных букв в введенной строке
vvod = input()
kol_sogl, kol_glas = 0,0
glas = 'ауоыиэяюёеАУОЫИЭЯЮЁЕ'
sogl ='бвгджзйклмнпрстфхцчшщБВГДЖЗЙКЛМНПРСТФХЦЧШЩ'
for c in vvod:
if c in glas:
kol_glas += 1
if c in sogl:
kol_sogl += 1
print('Количество гласных букв равно', kol_glas)
print('Количество согласных букв равно', kol_sogl)
Вводим строку, а программа определяет есть ли цифры среди введены символов.
vvod = input()
otvet = 'Цифр нет'
for i in range(len(str(vvod))):
if vvod[i] in '1234567890':
otvet ='Цифра'
print(otvet)
Вводим строку подряд из любого количества цифр, а программа их суммирует
vvod = input()
sum_simb = 0
for i in vvod:
sum_simb += int(i)
print(sum_simb)
Программа, выводящую графическое изображение делимости чисел от 1 до n включительно. В каждой строке программа напечатает очередное число и столько символов «+», сколько делителей у этого числа.
n = int(input())
for i in range(1, n+1): # циклом перебираем все числа от 1 до n включительно
print(i, end = '') # вывод текущего числа
for j in range(1, i+1): # цикл поиска делителя
if i % j == 0: # если число делится без остатка
print('+', end='') # то печатаем + без пробела
print() # переход на новую строку
Программа-заготовка позволяющая поочередно посчитать что-то до значения в 2 раза большего чем было.
Например, вводим 2, получаем
2
3
4
kol = int(input())
for i in range (kol):
kol +=1
print(kol)
Немного модернизирую
прошлую программу.
Теперь мы не ограничиваемся 10-ю яблоками. А для того чтобы написать ответ в правильном падеже - узнаем последнюю цифру числа при помощи деления с остатком
k = int(input('Сколько яблок вы хотите съесть?\n'))
r = k % 10
if k <= 0:
print('Похоже, вы не хотите яблок')
elif 5 <= k <=19 or r == 0 or 5 <= r <= 9:
print('Возьмите', k, 'яблок')
elif 2 <= r <= 4:
print('Возьмите', k, 'яблока')
else:
print('Возьмите', k, 'яблоко')
Программа разрешающая съесть определенное кол-во яблок.
Смысл программы в том, что ответ будет в нужном падеже.
k = int(input('Сколько яблок вы хотите сьесть? От 1 до 10'))
if k > 10:
print('Вам будет плохо от такого кол-ва')
elif k== 1:
print('Возьмите', k, 'яблоко')
elif k == 2 or k == 3 or k == 4:
print('Возьмите', k, 'яблока')
elif k <= 0:
print('Похоже, вы не хотите яблок')
else:
print('Возьмите', k, 'яблок')