Python在同一目录中找不到文件

Python在同一目录中找不到文件,python,Python,我正在编写一个简单的脚本,将文件附加到邮件中,但它找不到文件。这是我的一个街区: # KML attachment filename='20140210204804.kml' fp = open(filename, "rb") att = email.mime.application.MIMEApplication(fp.read(),_subtype="kml") fp.close() att.add_header('Content-Dispos

我正在编写一个简单的脚本,将文件附加到邮件中,但它找不到文件。这是我的一个街区:

    # KML attachment
    filename='20140210204804.kml'
    fp = open(filename, "rb")
    att = email.mime.application.MIMEApplication(fp.read(),_subtype="kml")
    fp.close()
    att.add_header('Content-Disposition','attachment',filename=filename)
    msg.attach(att)
文件20140210204804.kml与脚本位于同一文件夹中。我得到以下错误:

 IOError: [Errno 2] No such file or directory: '20140210204804.kml'

感谢您的帮助

工作目录未设置为脚本的目录,而是设置为启动脚本的当前目录

使用
\uuuu file\uuuu
确定文件位置,并以此作为起点,使
文件名
成为绝对路径:

import os

here = os.path.dirname(os.path.abspath(__file__))

filename = os.path.join(here, '20140210204804.kml')

你是如何运行脚本的?当前目录不一定与脚本的位置相同。太好了!!我不是这么想的。我可以理解“_file_uu”做了什么,但有没有任何链接可以解释它为什么/如何做的?@Abhishekdotpy:这里的大多数“技巧”都是使用;在那里查找
abspath
dirname
\uuuuu file\uuuuu
只是当前模块的文件名,它可以相对于工作目录。@Abhishekdotpy:
\uuuuuu file\uuuuu
在和中都有文档记录。