Вы можете попробовать
def generate_dict(number):
d= {}
for i in range(1,number+1):
d[i] = i ** 2
return d
print(generate_dict(10))
Вывод
{1: 1, 2: 4, 3: 9, 4: 16, 5: 25, 6: 36, 7: 49, 8: 64, 9: 81, 10: 100}
Это вернет вам словарь, в котором ключи представляют собой числа от 1 до n, а значения представляют собой квадрат ключа.