Ответы и решения урока 4.3(Вложенные списки. Часть 2) на курс «Поколение Python: курс для продвинутых»
Что покажет приведенный ниже фрагмент кода?
list1 = [[1, 2, 3], [4, 5]]
list2 = list1
list1[0].append(7)
print(list2)
[[1, 2, 3, 7], [4, 5]]
Чему будет равно
list1[1][1]
после выполнения следующего фрагмента кода:list1 = [[1] * 3] * 3
list1[0][1] = 5
5
Что покажет приведенный ниже фрагмент кода
n = 3
list1 = []
for _ in range(n):
row = input().split()
list1.extend(row)
print(list1)если на вход программе подаются строки:
9 7 6
2 1
3 4 45 67
['9', '7', '6', '2', '1', '3', '4', '45', '67']
Какой тип данных будет у переменной
row
?my_list = [[1], [2, 3], [4, 5, 6]]
total = 0
for row in my_list:
total += sum(row)
print(total)
list
Что покажет приведенный ниже фрагмент кода?
my_list = [[12, 221, 3], [41, 5, 633], [71, 8, 99]]
maximum = my_list[0][0]
minimum = my_list[0][0]
for row in my_list:
maximum = max(row)
minimum = min(row)
print(maximum + minimum)
107
Что покажет приведенный ниже фрагмент кода?
my_list = [[12, 221, 3], [41, 5, 633], [71, 8, 99]]
maximum = my_list[0][0]
minimum = my_list[0][0]
for row in my_list:
if max(row) > maximum:
maximum = max(row)
if min(row) < minimum:
minimum = min(row)print(maximum + minimum)
636
На вход программе подается число nn. Напишите программу, которая создает и выводит построчно список, состоящий из nn списков
[[1, 2, ..., n], [1, 2, ..., n], ..., [1, 2, ..., n]]
.
n = int(input())
matrix = [[j for j in range(1, n + 1)] for i in range(1, n + 1)]
print(*matrix, sep='\n')
На вход программе подается число nn. Напишите программу, которая создает и выводит построчно вложенный список, состоящий из nn списков
[[1], [1, 2], [1, 2, 3], ..., [1, 2, ..., n]]
.
n = int(input())
matrix = [[j for j in range(1, i + 1)] for i in range(1, n + 1)]
print(*matrix, sep='\n')
Треугольник Паскаля — бесконечная таблица биномиальных коэффициентов, имеющая треугольную форму. В этом треугольнике на вершине и по бокам стоят единицы. Каждое число равно сумме двух расположенных над ним чисел.
На вход программе подается число nn. Напишите программу, которая возвращает указанную строку треугольника Паскаля в виде списка (нумерация строк начинается с нуля).
n = int(input())
s = []
for i in range(n+1):
row=[1]*(i+1)
for j in range(i+1):
if j!=i and j!=0: row[j] = s[i-1][j-1]+s[i-1][j]
s.append(row)
print(s[n] if n!=0 else [1])
На вход программе подается натуральное число nn. Напишите программу, которая выводит первые nn строк треугольника Паскаля.
n = int(input())
P=[]
for i in range(0,n):
row=[1]*(i+1)
for j in range(i+1):
if j!=0 and j!=i:
row[j]=P[i-1][j-1]+P[i-1][j]
P.append(row)
for r in P:
print(*r)
На вход программе подается строка текста, содержащая символы. Напишите программу, которая упаковывает последовательности одинаковых символов заданной строки в подсписки.
res = []
for el in input().split():
if res and el in res[-1]:
res[-1].append(el)
else:
res.append([el])
print(res)
На вход программе подаются две строки, на одной символы, на другой число nn. Из первой строки формируется список.
Реализуйте функцию
chunked()
, которая принимает на вход список и число, задающее размер чанка (куска), а возвращает список из чанков указанной длины.
def chunked(st, n):
st = st.split()
a = [[] for _ in range(0, len(st), n)]
for i in range(len(a)):
a[i].extend(st[:n])
st = st[n:]
return a
string = input()
num = int(input())
print(chunked(string, num))
Подсписок — часть другого списка. Подсписок может содержать один элемент, несколько, и даже ни одного. Например,
[1]
,[2]
,[3]
и[4]
— подсписки списка[1, 2, 3, 4]
. Список[2, 3]
— подсписок списка[1, 2, 3, 4]
, но список[2, 4]
не подсписок списка[1, 2, 3, 4]
, так как элементы 22 и 44 во втором списке не смежные. Пустой список — подсписок любого списка. Сам список — подсписок самого себя, то есть список[1, 2, 3, 4]
подсписок списка[1, 2, 3, 4]
.На вход программе подается строка текста, содержащая символы. Из данной строки формируется список. Напишите программу, которая выводит список, содержащий все возможные подсписки списка, включая пустой список.
n=input().split()
o=[[]]
k=1
while k!=len(n)+1:
for j in range(len(n)):
if len(n[j:j+k])==k:
o.append(n[j:j+k])
k+=1
print (o)
Если у вас не отображается решение последних задач, значит у вас включен блокировщик рекламы который вырезает эти ответы
Разбиение на чанки 🌶️ На вход программе подаются две строки, на одной символы, на другой число nn. Из первой строки формируется список. Реализуйте функцию chunked(), которая принимает на вход список и число, задающее размер чанка (куска), а возвращает список из чанков указанной длины. Формат входных данных На вход программе подается строка текста, содержащая символы, отделенные символом пробела и число nn на отдельной строке. Формат выходных данных Программа должна вывести указанный вложенный список. Примечание. Не забудьте вызвать функцию chunked(), чтобы вывести результат 😀.
# put your python code here
def chunked(lst, n):
return [lst[i:i+n] for i in range(0, len(lst), n)]
# считываем строку с символами и строку с числом n
chars = input().split()
n = int(input())
# преобразуем строку с символами в список
lst = list(chars)
# разбиваем список на чанки длины n
result = chunked(lst, n)
# выводим результат
print(result)
Упаковка дубликатов 🌶️ На вход программе подается строка текста, содержащая символы. Напишите программу, которая упаковывает последовательности одинаковых символов заданной строки в подсписки. Формат входных данных На вход программе подается строка текста, содержащая символы, отделенные символом пробела.
s = input().split()
result = []
current = [s[0]]
for i in range(1, len(s)):
if s[i] == current[0]:
current.append(s[i])
else:
result.append(current)
current = [s[i]]
result.append(current)
print(result)
s = input().split()
result = []
current = [s[0]]
for i in range(1, len(s)):
if s[i] == current[0]:
current.append(s[i])
else:
result.append(current)
current = [s[i]]
result.append(current)
print(result)
n = int(input())
triangle = [[1]]
for i in range(1, n):
row = [1]
for j in range(1, i):
row.append(triangle[i-1][j-1] + triangle[i-1][j])
row.append(1)
triangle.append(row)
for row in triangle:
print(‘ ‘.join(str(num) for num in row))
можете пожалуйста сделать ответы на 5.1 я не могу решить этот экзамен

Ответы на экзамен не публикуем
зачем лезть в экзамен , если не разобралась в теме? хочешь показать что сдала ? так не работает. учи матчасть
да*н может она хочет узнать как решать ту задачу?