Независимый от операционной системы API для контроля файловой системы?

Вы очень близки! Вы фактически добавляете в свой новый список new каждый раз, когда заменяете письмо. Вот почему вы получаете так много значений в вашем списке.

Еще один способ запуска кода - создать копию grid1, а затем заменять каждое слово при каждой замене буквы. Вот новая функция, реализующая эти небольшие изменения:

def lower_words(grid, positions_words_occupy):

    new = grid1.copy()

    for position in positions_words_occupy:

        line= position[0]
        column= position[1]

        row= new[line]
        element= row[column]

        #new.remove(row)
        new_word = row[:column] + element.lower() + row[column+1:]
        new[line] = new_word

    return new

Выход работает lower_words(grid1, positions_words_occupy):

['pIgatoS', 'aNRBKFD', 'tMcaoXa', 'oObBYQU', 'MACoUIV', 'EEJMiWL']
8
задан Quinn Taylor 30 June 2009 в 17:05
поделиться

4 ответа

Облегченный ответ, хотя и требующий большой зависимости библиотеки (это того стоит, IMO)!

QT предоставляет класс QFileSystemwatcher , который использует собственный механизм базовой платформы.

Более того, вы можете использовать привязки языка QT для Python или Ruby. Здесь - простое приложение PyQT4, которое использует QFileSystemWatcher .

Примечания

9
ответ дан 5 December 2019 в 08:55
поделиться

И на OS X это назвало fsevents. Это - уровень ОС API, таким образом, это является самым легким к доступу от C или C++. Это должно быть доступно почти с любого языка, хотя привязка для Вашего предпочтительного языка еще не могла быть записана.

0
ответ дан 5 December 2019 в 08:55
поделиться

В Linux это называют inotify.

0
ответ дан 5 December 2019 в 08:55
поделиться

API полностью отличаются для Windows, Linux, Mac OS X и любого другого Unix, который можно назвать, это кажется. Я не знаю ни о какой межплатформенной библиотеке, которая обрабатывает это последовательным способом.

10
ответ дан 5 December 2019 в 08:55
поделиться
Другие вопросы по тегам:

Похожие вопросы: