#Создайте список my_list_1 из строки «Привет Мир!» и выведите результат.
my_list_1 = ["Привет Мир!"]
print(my_list_1)

#Создайте список my_list_2 из любых значений (произвольный) и выведите результат.
my_list_2 = ["Привет Мир!", 1, 2]
print(my_list_2)

#Смените тип my_list_1 и my_list_2 на кортежи записав их в переменные tuple_1 и tuple_2 соответственно. и выведите результат.
tuple_1 = tuple(my_list_1)
tuple_2 = tuple(my_list_2)
print(my_list_1, my_list_2, tuple_1, tuple_2)

#Измените любой индекс списка my_list_1 и выведите результат.
my_list_1[0] = "Привет не мир!"
print(my_list_1)

#Попробуйте изменить кортеж tuple_1 так же как и список. (у вас будет ошибка.)
#tuple_1[0] = 123
#print(tuple_1)
# Пон, закоментил чтобы не мешало

#Создайте список из 10 значений и пройдите по нему и циклом while и циклом for. И выведите каждый элемент списка, возведенным в квадрат.
my_list_3 = [2,2,2,2,3,3,3,13,4,4]
for i in my_list_3:
    print(i**2)

#У вас есть строка «ПРИВЕТпривет» выведите посимвольно первую половину строки используя цикл while, не считайте индексы вручную. Используйте логику.
my_str_1 = "ПРИВЕТпривет"
for w in my_str_1:
    if w.isupper():
        print(w)

#Создайте пустой список, И используя конструкцию for i in range(1,11):Заполните список значениями i
my_list_4 = []
for i in range(1, 11):
    my_list_4.append(i)
print(my_list_4)

#Создать пустой список и вывести его на экран.
my_list_5 = []
print(my_list_5)

#Добавить в список 1 любое число и вывести список
my_list_5.append(1)
print(my_list_5)

#Добавить в этот же список любой другой тип данных и вывести результат.
my_list_5.append("Variant")
print(my_list_5)

#Написать цикл, который по порядку выводит числа от 1 до 10 - С помощью функции range 
for i in range(1, 11):
    print(i)

#Написать цикл, который добавит последовательность от 1 до 10 к списку, созданному в 3-ем задании. (обоими циклами) и вывести на экран
for i in range(1, 11):
    my_list_5.append(i)
i = 0
while i <= 9:
    i += 1
    my_list_5.append(i)
print(my_list_5)

#Напиши цикл, который пройдет по строке(с произвольным текстом) и добавит в пустой список все буквы по очереди. (обоими циклами) и вывести на экран
my_list_6 = []
my_str_2 = "asasasasa"
i = 0
for a in my_str_2:
    i += 1
    if i % 2 == 0:
        my_list_6.append(a)
i = 0
while i < len(my_str_2):
    i += 1
    if i % 2 == 0:
        my_list_6.append(my_str_2[i-1])
print(my_list_6)

#Посчитайте количество символов в строке 'Python - это Питон!', использовав счетчики на основе циклов for и while.
my_str_3 = "Python - это Питон!"
i = 0
for a in my_str_3:
    i += 1
print(i)

i = 0
while i < len(my_str_3):
    i += 1
print(i)

#Сколько кортежей содержится в списке [(1, 2), (3), (4,), (5+6), (7+8,)]? Проверьте свой ответ программно, используя циклы. Выведите кортежи на экран в одну строку. Тут помогут функции type (X) == tuple или isinstance (X, tuple) (обоими циклами)
my_list_7 = [(1, 2), (3), (4,), (5+6), (7+8,)]
i = 0
for e in my_list_7:
    if isinstance(e, tuple):
        i += 1
print(i)

i_1 = 0
i_2 = 0
while i_1 < len(my_list_7):
    i_1 += 1
    if isinstance(my_list_7[i_1-1], tuple):
        i_2 += 1
print(i_2)

#Дано 10 чисел. Найти количество положительных чисел среди них;
my_list_8 = [1,2,3,4,5,6,-7,8,9,10]
i = 0
for e in my_list_8:
    if e >= 0:
        i += 1
print(i)

#Записать в массив все числа в диапазоне от 54 до 918 кратные 5; 
#MESSAGE: не нашел как обяьвить пустой массив, с учетом подключения array модуля
my_list_9 = []
for n in range(54, 918):
    if n % 5 == 0:
        my_list_9.append(n)
print(my_list_9)

#Перемножить все не чётные значения в диапазоне от 0 до 94; 
#MESSAGE: странное задание ведь начинаем 0, значит 0
number = 1
for n in range(0, 94):
    if n % 2 == 0:
        number = number * n
print(number)    
        
#Найти сумму ряда чисел от 1 до 1000. Полученный результат вывести на экран (обоими циклами)
my_list_10 = [*range(1, 1000)]
i = 0
for n in my_list_10:
    i += n
print(i)
i = 0
n = 0
while n < len(my_list_10):
    i += my_list_10[n]
    n += 1
print(i)

#Дано число – цена за 1 кг конфет. Вывести стоимость 20, 30,40 и 50 кг конфет. Решить задачу используя циклическую конструкцию for.
my_list_11 = [20, 30, 40, 50]
for i in my_list_11:
    print(i*5)

#Дана последовательность отрицательных целых чисел, оканчивающаяся положительным числом.  [-99, -77, -5, - 4, 10] Найти среднее арифметическое всех чисел последовательности (без учета положительного числа). Решить задачу используя циклическую конструкцию while и не пользоваться if 
my_list_12 = [-99, -77, -5, -4, 10]
my_list_12.pop()

i = 0
sum = 0
while i < len(my_list_12):
    sum += my_list_12[i]
    i += 1
print(sum / len(my_list_12))
    
#Дана последовательность из n целых чисел. Первое число в последовательности чётное.  [94, 6, -4, 77, 6, 4, -5, - 4, 10]Найти сумму всех идущих подряд в начале последовательности чётных чисел. Условный оператор (if) не использовать. Решить задачу используя циклическую конструкцию while.   
my_list_13 = [94, 6, -4, 77, 6, 4, -5, -4, 10]
i = 0
sum = 0
while i < len(my_list_13):
    val = my_list_13[i] % 2
    sum += my_list_13[i]*(~val + 2)
    i += 1
print(sum)

#Даны два числа A и B (A<B). Найти сумму всех целых чисел от А до В включительно. Решить задачу обоими циклами
my_list_14 = [1, 2.2, 2, 4]
sum = 0
for i in my_list_14:
    sum += i * (int(isinstance(i, int)))
print(int(sum))

i = 0
sum = 0
while i < len(my_list_14):
    sum += my_list_14[i] * (int(isinstance(my_list_14[i], int)))
    i += 1
print(int(sum))

#Даны два числа A и B (A<B). Найти сумму квадратов всех целых чисел от А до В включительно. Решить задачу обоими циклами
my_list_14 = [1, 2.2, 2, 4]
sum = 0
for i in my_list_14:
    sum += (i * (int(isinstance(i, int))))**2
print(int(sum))

i = 0
sum = 0
while i < len(my_list_14):
    sum += (my_list_14[i] * (int(isinstance(my_list_14[i], int))))**2
    i += 1
print(int(sum))


#Найдите сумму всех элементов списка тип которых int [1, '2', 3, 4, '5', 6, ‘7’]
my_list_14 = [1, "2", 3, 4, "5", 6, "7"]
sum = 0
for i in my_list_14:
    if isinstance(i, int):
        sum += i
print(sum)

#Найдите сумму всех элементов списка [1, '2', 3, 4, '5', 6, “7”], предварительно приводя строки к целым числам.
my_list_14 = [1, "2", 3, 4, "5", 6, "7"]
sum = 0
for i in my_list_14:
    sum += int(i)
print(sum)

#Дано множество целых чисел {12, 33, 24, 7, 19}. Выведите на экран только четные числа.
my_list_14 = [12, 33, 24, 7, 19]
for i in my_list_14:
    if i % 2 == 0:
        print(i)

#Вычислить и вывести на экран сумму кубов натуральных чисел от 1 до n включительно. Верхний предел должен вводиться с клавиатуры и не должен превышать числа 100.
#MESSAGE: закментил, потому что у меня в песочнице нельзя вводить 
# user_int = int(input())
# if user_int > 100:
#     user_id = 100
# my_list = [*range(1, user_int + 1]
# sum = 0
# for i in my_list:
#     sum += i**3
# print(sum)

#Используя циклы, проверьте при помощи оператора in наличие символа “А” в строке «Погода прекрасная» и вторым циклом в строке «А сегодня будет салют»
#MESSAGE: не понял, ин итак првоеряет в строке вхождение по символьно
#1
my_str = "Погода прекрасная"
print("А" in my_str)
my_str = "А сегодня будет салют"
print("А" in my_str)
#2
my_str = "Погода прекрасная"
for a in my_str:
    if "А" in a:
        print("True. break")
        break

my_str = "А сегодня будет салют"
i = 0
while i < len(my_str):
    if "А" in my_str[i]:
        print("True. break")
        break
    i += 1

#Используя циклы, проверьте при помощи оператора in наличие символа “А” (независимо от регистра) в строке «Погода прекрасная» и вторым циклом в строке «А сегодня будет салют»
find = "А"
my_str = "Погода прекрасная"
for a in my_str:
    if find in a or find.lower() in a:
        print("True. break")
        break

my_str = "А сегодня будет салют"
i = 0
while i < len(my_str):
    if find in my_str[i] or find.lower() in my_str[i]:
        print("True. break")
        break
    i += 1

#Используя циклы, проверьте при помощи оператора in наличие символов строки 'abcde123' в строке 'bad_cat_23', выводя результаты проверки на экран в виде «Символ "a" есть в "bad_cat_23".» или «Символа "n" нет в "bad_cat_23".»
find = "abcde123"
my_str = "bad_cat_23"
for a in find:
    if a in my_str:
        print("Символ \""+a+"\" есть в \""+my_str+"\".")
    else:
        print("Символ \""+a+"\" нет в \""+my_str+"\".")
        
i = 0
while i < len(my_str):
    if my_str[i] in my_str:
        print("Символ \""+my_str[i]+"\" есть в \""+my_str+"\".")
    else:
        print("Символ \""+my_str[i]+"\" нет в \""+my_str+"\".")
    i += 1

#Вычислить факториал заданного натурального числа. Факториал числа n вычисляется по формуле: n! = 1*2*3*...*n. Число n должно вводиться с клавиатуры и не должно превышать числа 30
#MESSAGE: закментил, потому что у меня в песочнице нельзя вводить 
# user_int = int(input())
user_int = 20
if user_int > 30: 
    user_int = 30
factorial = 1
while user_int > 1:
    factorial *= user_int
    user_int -= 1
print(factorial)

#Даны два списка строк ['1', 'True', 'ok'] и ['no', 'True', 'no']. Сформируйте новый список, который будет состоять из строк, которые присутствуют хотя бы в одном из списков. Выведите полученный список на экран. (возможно понадобится приведение к set () )
my_list_1 = ["1", "True", "ok"]
my_list_2 = ['no', 'True', 'no']
print(set(my_list_1 + my_list_2))

#Выведите на экран через пробел все символы строки 'abcdefABCDEF', которые находятся в нижнем регистре, не используя при этом срез строки.
for a in "abcdefABCDEF":
    if a.islower():
        print(a)

#Выведите на экран цифры вводимого с клавиатуры натурального числа, пропуская цифры 2 и 5.
#MESSAGE: закментил, потому что у меня в песочнице нельзя вводить 
# user_int = int(input())
user_int = 5
if not user_int in [2,5]:
    print(user_int)

#У вас есть список из целых чисел и еще один пустой список. Вам нужно пройти по заполненному списку циклом и записать в пустой список все четные значения.
my_list_1 = [1,2,3,5,6]
my_list_2 = []
for i in my_list_1:
    if i % 2 == 0:
        my_list_2.append(i)

print(my_list_2)
    
#У вас есть строка, нужно пройти по каждому символу и если он цифра – вывести его.
for a in 'asdsad123asda':
    if a.isnumeric():
        print(a)

#Пройдите по строке циклом и продублируйте каждый ее символ 3 раза. Выведите итоговую строку
my_str = "asd"
new_my_str = ""
for a in my_str:
   new_my_str += a*4
print(new_my_str)

#Напишите программу, которая из предоставленного списка целых значений возвращает (печатает) только Чётные 
my_list = [*range(0,10)]
for i in my_list:
    if i % 2 == 0:
        print(i)

#Напишите программу, которая из предоставленного списка целых значений возвращает (печатает) только Чётные. НЕ четные увеличивает на 1 и выводит. 
my_list = [*range(0,10)]
for i in my_list:
    if i % 2 == 0:
        print(i)
    else:
        print(i+1)

#У вас есть список любых значений (целые числа) вывести только положительные
my_list = [*range(-10,10)]
for i in my_list:
    if i >= 0:
        print(i)

#Дан словарь {1: [1, 2, 3, 4], 2: [5, 6, 7, 8]}. Удалите из вложенных списков все четные значения элементов. Выведите измененный словарь на экран. Чтоб пройти по Значениям, понадобится словарь.values():
my_list = {1: [1, 2, 3, 4], 2: [5, 6, 7, 8]}
for e in my_list.values():
    for i in e:
        if i % 2 == 0:
            e.remove(i)
print(my_list)

#Пройти по словарю и вывести значения всех ключей 
my_list = {1: [1, 2, 3, 4], 2: [5, 6, 7, 8]}
print(list(my_list))

#Пройти по словарю и вывести ключи через один.
my_list = {1: [1, 2, 3, 4], 2: [5, 6, 7, 8], 4: [5, 6, 7, 8]}
var_1 = 0
for i in my_list:
    if var_1 == 0:
        print(i)
    var_1 = ~var_1

#У вас есть словарь и список. В списке содержится часть элементов Словаря. Вам нужно пройти циклом по списку и вывести значение словаря, если такой ключ существует
my_list = [4, 2]
my_dict = {1: [1, 2, 3, 4], 2: [5, 6, 7, 8], 4: [5, 6, 7, 8]}
for i in my_list:
    var_1 = my_dict.get(i)
    if var_1:
        print(var_1)

#У вас список из различных типов данных. Выведите только целые числа (type () и isinstance () вам помогут) 
my_list = ["1231", 322, "sadsad"]

for el in my_list:
    if isinstance(el, int):
        print(el)

#Cгенерируйте и выведите на экран мозаичное изображение гексагональной сетки, напоминающее мелкоячеистую проволочную сетку.
my_dict = {0:["/", " ", "\\", "_"], -1:["\\", "_", "/", " "]}
my_my_str = ""
var_1 = 0;
for v in range(0, 9):
    for i in range(0, 25):
        for k in range(0, 4):
            my_my_str += my_dict[var_1][k]
    
    my_my_str += "\r"
    var_1 = ~var_1
print(my_my_str)

#Выведите на экран в порядке возрастания и через пробел все цифры вложенных списков конструкции [[[1, 2, 3], [4, 5, 6], [7, 8, 9]], [[10, 11, 12], [13, 14, 15], [16, 17, 18]], [[19, 20, 21], [22, 23, 24], [25, 26, 27]]]. Не забываем делать это при помощи циклов for и while (должны получиться тройные матрешки из вложенных циклов)
my_list = [[[1, 2, 3], [4, 5, 6], [7, 8, 9]], [[10, 11, 12], [13, 14, 15], [16, 17, 18]], [[19, 20, 21], [22, 23, 24], [25, 26, 27]]]
def recursive(param, result):
    for el in param:
        if isinstance(el, list):    
            result = recursive(el, result)
        else: 
            result = result+" "+str(el)
    return result

print(recursive(my_list, ""))

#CВыведите на экран таблицу умножения чисел от одного до девяти.
my_str = ""
for v in range(0, 10):
    if v == 0:
        my_str = my_str+" x"
    else:
        my_str = my_str+" "+str(v)
        
    for g in range(1, 10):
        if v == 0:
            my_str =  my_str+" "+str(g)
        else:
            my_str = my_str+" "+str(g*v)
        
    my_str = my_str+"\r"

print(my_str)

#Дана строка «В гостях хорошо, а дома лучше»Выведите все гласные буквы(подсказка, вы можете сделать список/строку со всеми гласными буквами и … == )Решается, либо, через цикл и метод, либо через цикл и вложенный цикл (возможно есть другие варианты)
my_alphabet = "ауоыэяюёие"
my_str = "В гостях хорошо, а дома лучше"
for a in my_str:
    if a.lower() in my_alphabet:
        print(a)
            
     
#Напишите алгоритм шифрования для программы «Открытый шифровальщик паролей» Его задача, отправить в базу данных пароль, который ввел пользователь (можно без input(), просто в переменную записать – меньше времени на ввод потратите, но перед отправкой, поменять в пароле все одинаковые символы с русского на английский или наоборот. 
def encrypt(password):
    #A C E X O P T H M B K (англ)   == А С Е Х О Р Т Н М В К (рус)
    my_dict = {-1:["A", "C", "E", "X", "O", "P", "T", "H", "M", "B", "K"], 0:["А", "С", "Е", "Х", "О", "Р", "Т", "Н", "М", "В", "К"]}
    conformity = {}
    pwd_new = ""
    for el in range(-1, 1):
        for a in range(0, len(my_dict[el])):
            conformity[ord(my_dict[el][a])] = my_dict[~el][a]
            conformity[ord(my_dict[el][a].lower())] = my_dict[~el][a].lower()
    print(conformity)
    for a in password:
        check_alpha = conformity.get(ord(a))
        if check_alpha:
            print(check_alpha)
            pwd_new += check_alpha
        else:
            pwd_new += a
    return pwd_new


print(encrypt("aа"))


#И последнее. (Тут Нужно запариться) Но после этого задания вы будете рады следующему уроку про функции и даже не придется объяснять для чего они нужны. (Выполнить задание нужно без функций)
my_list = [1,2,3, [1.1 ,2.1, [1.2, 2.2, [1.3,2.3,3.3, [1.4,2.4,]]]]]
print(recursive(my_list, "")) 
# Я уже написал рекурсию, в которой собираю все числа в 1 строку, независимо от вложенности списка. Не поочереди конечно, но думаю смысл не поменялся, от решения задачи.
# Если не подходит могу продублировать...


    





















Embed on website

To embed this project on your website, copy the following code and paste it into your website's HTML: