2013-05-18 8 views
0

Я пытаюсь создать сценарий для просмотра файлов определенной папки, а затем переместить файлы на основе критериев для определенных папок. Я могу записать его с помощью критериев, которые я хочу, но я хотел бы, если бы захотел изменить критерии не изменять реальный скрипт, а скорее менять текстовый файл.Как создать динамические условия в Python?

пример кода:

from os import listdir 
from os.path import isfile, join 

while True: 
    files = [item for item in listdir(target_folder) if isfile(join(target_folder,item))] 
    for each_file in files: 
     if each_file.endswith('.exe'): 
      print 'File Found. 

То, что я действительно хочу сделать, это альтернатива Belvedere http://lifehacker.com/341950/belvedere-automates-your-self+cleaning-pc .I создали графический интерфейс для большей части, но я не ясно, на остальной части необходимого кода Я попытался прочитать источник Бельведера, но я смутился.

+0

вы хотите изменить содержимое файла или изменить критерии для выбора этих файлов? –

+0

Только критерии. – GiannisIordanou

ответ

0

Я не 100% ясно, что вы имеете в виду, но вы могли бы определить функцию одного аргумента в вашей, если заявление, а затем изменить это позже, если вам нужно, а именно:

from os import listdir, 
from os.path import isfile, join 

def matching_file(path): 
    return path.endswith(".exe") 

while True: 
    files = [item for item in listdir(target_folder) if isfile(join(target_folder, item))] 
    for each_file in files: 
     if matching_file(each_file): 
      print "File found." 
     if "PYTHON" in each_file: 
      matching_file = lambda x: x.endswith(".py") 

это просто глупый пример, но вы можете заменить что-нибудь на matching_file и, таким образом, сможете менять свои критерии на лету.

Смежные вопросы