Добрый, добрый 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! = 720
for 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