Форум сайта python.su
#!/usr/bin/python # -*- coding: utf-8 -*- import sys, os.path, shutil img = sys.argv[1] dir_ = sys.argv[2] date = "11.11.2014" for root, dirs, files in os.walk(dir_): if date in dirs: shutil.copy2(img, os.path(dir_, date)) else: print "err"
Офлайн
shutil.copy2(img, os.path.join(dir_, date))
Офлайн
werterДа, join забыла. Но ошибка с Non-ASCII не убирается
shutil.copy2(img, os.path.join(dir_, date))
Офлайн
l1nxЯ в полном замешательстве. Ошибка в наличии не ASCII символа в строчке 12, однако в предъявленном исходнике 11 строк, и кодировка исходника задана. Вы точно один и тот же скрипт запускаете и правите?!
SyntaxError: Non-ASCII character ‘\xd0’ in file test_shutil.py on line 12
Отредактировано PooH (Апрель 18, 2015 20:00:55)
Офлайн
PooH
http://pastie.org/10100134
Тут на сайте парсилка кода выкидывает пустые строки
Отредактировано l1nx (Апрель 18, 2015 20:21:08)
Офлайн
Прикрепи файл с диска к сообщению.
l1nxТут два противоречия: во-первых, он говорит, что в исходном файле есть байт \xd0, когда его нет, а во-вторых, он говорит, что кодировка не указана, когда она указана.
SyntaxError: Non-ASCII character ‘\xd0’ in file test_shutil.py on line 12, but no encoding declared
Отредактировано py.user.next (Апрель 18, 2015 22:51:14)
Офлайн
Разобралась с кодировкой и своей криворукостью.
Теперь что-то не так с логикой выполнения кода. Фото копируется в папку и выводится err
http://i.imgur.com/HOQUTk6.png
Офлайн
Запускаешь через
python script.py
#!/usr/bin/python
./script.py
#!/usr/bin/env python
l1nxПотому что os.walk() так работает - спускается в подпапки.
Фото копируется в папку и выводится err
>>> import os >>> >>> w = os.walk('prog') >>> next(w) ('prog', ['practice', 'info', 'projects'], ['.directory']) >>> next(w) ('prog/practice', ['c', 'info'], ['.directory']) >>>
Отредактировано py.user.next (Апрель 19, 2015 14:43:09)
Офлайн
py.user.next
Ок. Сделала так
#!/usr/bin/env python import sys, os.path, shutil img = sys.argv[1] dir_ = sys.argv[2] date = "11.11.2014" for root, dirs, files in os.walk(dir_): if date in dirs: shutil.copy2(img, os.path.join(dir_, date)) else: print "err" break
Офлайн