# Создаем список пользователей: конкретные имена + автоматически сгенерированные пользователи
specific_users = ['Ivan', 'Sergey', 'Boris', 'Grigory']
generated_users = [f'User{i + 1}' for i in range(4)] # 4 автоматически сгенерированных пользователей
users = specific_users + generated_users
# Количество объектов (4 объекта)
objects = [f'Object{i + 1}' for i in range(4)]
# Возможные права доступа
operations = ['read', 'write', 'grant', 'record']
# Матрица доступа
access_matrix = {}
# Генерация прав доступа
for user in users:
access_matrix[user] = {}
for obj in objects:
if user == 'Sergey': # "Sergey" - администратор, имеет все права
access_matrix[user][obj] = ['read', 'write', 'grant']
else: # Случайные права для остальных пользователей
access_matrix[user][obj] = random.sample(operations, random.randint(0, 4))
# Функция идентификации пользователя
def identify_user():
user = input("Введите идентификатор пользователя: ")
if user in users:
print(f"Добро пожаловать, {user}!")
return user
else:
print("Идентификация не удалась.")
return None
# Функция отображения прав доступа в табличном виде
def show_access_rights(user):
print(f"\nПрава доступа для пользователя {user}:")
print(f"{'Объект':
после строк с for, while, if, def, else, elif и других команд с использованием двоеточий должен быть отступ в четыре пробела (нажатие tab). Ты что, удалял их?
Вот пофикшенный код: import random
# Создаем список пользователей: конкретные имена + автоматически сгенерированные пользователи
specific_users = ['Ivan', 'Sergey', 'Boris', 'Grigory']
generated_users = [f'User{i + 1}' for i in range(4)] # 4 автоматически сгенерированных пользователей
users = specific_users + generated_users
#Количество объектов (4 объекта)
objects = [f'Object{i + 1}' for i in range(4)]
#Возможные права доступа
operations = ['read', 'write', 'grant', 'record']
#Матрица доступа
access_matrix = {}
#Генерация прав доступа
for user in users:
access_matrix[user] = {}
for obj in objects:
if user == 'Sergey': # "Sergey" - администратор, имеет все права
access_matrix[user][obj] = ['read', 'write', 'grant']
else: # Случайные права для остальных пользователей
access_matrix[user][obj] = random.sample(operations, random.randint(0, 4))
#Функция идентификации пользователя
def identify_user():
user = input("Введите идентификатор пользователя: ")
if user in users:
print(f"Добро пожаловать, {user}!")
return user
else:
print("Идентификация не удалась.")
return None
#Функция отображения прав доступа в табличном виде
def show_access_rights(user):
print(f"\nПрава доступа для пользователя {user}:")
print(f"{'Объект':