2016-05-18 1 views
-2

Не в состоянии понять об этой ошибкеExists функция не работает в Python

Traceback (most recent call last): 
    File "ex4.py", line 6, in <module> 
    print "does the file exsts %r" % exists(src_file) 
    File "C:\Python27\lib\genericpath.py", line 26, in exists 
    os.stat(path) 
TypeError: coercing to Unicode: need string or buffer, file found 

это мое содержимое файла

from sys import argv 
from os.path import exists 
script,source,desti=argv 
src_file=open(source) 
data=src_file.read() 
print "does the file exists %r" % exists(src_file) 
dest_file=open(desti,'r+') 
dest_file.write(data) 
print dest_file.read() 

ответ

3

os.path.exists() функция принимает строку , содержащая имя файла. Вы передали открытый файл (результат вызова open(source)).

Вы можете использовать source вместо этого, который содержит ваше имя файла:

print "does the file exists %r" % exists(source) 

Поскольку вы уже удалось открыть файл с именем файла, нет смысла в тестировании на наличие файла однако.

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