История изменений
Исправление TheKnight, (текущая версия) :
1) Права доступа в Unix записываются в восьмиричном виде.
2) Тебе надо получить три трехбитовых числа, каждое из которых показывает правда доступа для одного из трех возможных случаев - пользователь, группа, остальные.
3) для отладки тебе пригодится функция bin(int number), возвращающая бинарное представление. Ну и её родственник oct(int number)
4) Что бы занулить биты в числе на определенной позиции тебе надо сделать логическое или с соотвествующей маской
In [23]: oct(0644 & 0007)
Out[23]: '04'
In [22]: oct(0644 & 0700)
Out[22]: '0600'
5) Дальше тебе надо проверить биты на определенной позиции.
In [32]: (4 & 0b100) >> 2 == 1
Out[32]: True
6) Если ты после этих подсказок не справишься с задачей - стоит задуматься о том, нужно ли учиться на программиста.
Исходная версия TheKnight, :
1) Права доступа в Unix записываются в восьмиричном виде.
2) Тебе надо получить три трехбитовых числа, каждое из которых показывает правда доступа для одного из трех возможных случаев - пользователь, группа, остальные.
3) для отладки тебе пригодится функция bin(int number), возвращающая бинарное представление.
4) Что бы занулить биты в числе на определенной позиции тебе надо сделать логическое или с соотвествующей маской
In [23]: oct(0644 & 0007)
Out[23]: '04'
In [22]: oct(0644 & 0700)
Out[22]: '0600'
5) Дальше тебе надо проверить биты на определенной позиции.
In [32]: (4 & 0b100) >> 2 == 1
Out[32]: True
6) Если ты после этих подсказок не справишься с задачей - стоит задуматься о том, нужно ли учиться на программиста.