Добрый, добрый Python
November 15, 2023
Stepik: Примеры работы оператора цикла for. Функция enumerate
Вычисление факториала от натурального числа n - (n! = 1*2*3*4*5*...*n)
n = int(input('Введите натуральное число не более 100: '))
if n < 1 or n > 100:
print('Неверно введенно натуральное число')
else:
p = 1
for i in range(1, n+1):
p *= i
print(f'Факториал {n}! = {p}')
Ввод: 6
Вывод: Факториал 6! = 720for i in range(1, 7):
print('*' * i)
# Вывод:
# *
#**
#***
#****
#*****
#******Объединение списка в одну строку
words = ['Python', 'дай', 'мне', 'силы', 'пройти', 'этот', 'курс', 'до', 'конца'] s = '' # в этой переменной будем хранить результат for w in words: s += ' ' + w print(s.lstrip()) # Вывод: Python дай мне силы пройти этот курс до конца
Все двухзначные числа нужно заменить нулями
digs = [4, 3, 100, -53, -30, 1, 34, -8] for i in range(len(digs)): if 10 <= abs(digs[i]) <= 99: digs[i] = 0 print(digs) # Вывод: [4, 3, 100, 0, 0, 1, 0, -8]
Функция enumerate() - возвращает пару индекс, значение.
Решение примера выше, только с enumerate().
digs = [4, 3, 100, -53, -30, 1, 34, -8] for i, d in enumerate(digs): if 10 <= abs(d) <= 99: digs[i] = 0 print(digs) # Вывод: [4, 3, 100, 0, 0, 1, 0, -8]
Преобразование кириллицы в латиницу
t = ['a', 'b', 'v', 'g', 'd', 'e', 'zh',
'z', 'i', 'y', 'k', 'l', 'm', 'n',
'o', 'p', 'r', 's', 't', 'u', 'f',
'h', 'c', 'ch', 'sh', 'shch', '',
'y', '', 'e', 'yu', 'ya'
]
start_index = ord('а') # принимает значение кода для первой буквы русского алфавита
title = 'Python - дай мне силы пройти этот курс до конца'
slug = '' # хранит преобразование кириллицы в латиницу
for s in title.lower():
if 'а' <= s <= 'я':
slug += t[ord(s) - start_index]
elif s == 'ё':
slug += 'yo'
elif s in ' !?;:.,':
slug += '-'
else:
slug += s
while slug.count('--'):
slug = slug.replace('--', '-')
print(slug)
# Вывод: python-day-mne-sily-proyti-etot-kurs-do-konca