运行时依旧提示错误syntaxerror: 'return' outside function

运行时依旧提示错误syntaxerror: 'return' outside function

当我运行写的脚本的时候,便出现  
File "C:\kav.new.py", line 96
SyntaxError: 'return' outside function

不知道为什么,可以帮我解决一下吗?
代码为

def tmpfile():
fd.name = tempfile.mkstemp(prefix="kl_",suffix=".ex_")  
try:
  os.close(fd)
  filename = os.path.split(name)[1]
finally:
  os.unlink(name)
        return filename

缩近不对。
第二行缩进
同意2、3楼
谢谢各位,但是我改成下面的样子后还是一样的。
def tmpfile():
             fd.name = tempfile.mkstemp(prefix="kl_",suffix=".ex_")  
             try:
                         os.close(fd)
                         filename = os.path.split(name)[1]
            finally:
                         os.unlink(name)
            return filename
我给你改了一下,不过还有n多的问题:

[Copy to clipboard] [ - ]
CODE:
def tmpfile():
    fd.name = tempfile.mkstemp(prefix="kl_",suffix=".ex_")  
    try:
        os.close(fd)
        filename = os.path.split(name)[1]
    finally:
        os.unlink(name)
    return filename

1. tempfile模块没有导入
2. fd不知道从哪里来的,通过猜你的意思是fd, name

上面代码是可以运行的,不过要先导入 import tempfile模块
在我这边把finally那行和下面一行的缩进改正后就正常了,当然,如同limodou前辈说的,fd和name哪来的就不知道了


QUOTE:
原帖由 limodou 于 2008-6-25 13:18 发表
我给你改了一下,不过还有n多的问题:


def tmpfile():
    fd.name = tempfile.mkstemp(prefix="kl_",suffix=".ex_")  
    try:
        os.close(fd)
        filename = os.path.split(name)[1]
  ...

我的意思是fd, name,并且在前面有导入import tempfile
可就是提示这个错误,快哭了......
什么错误,我都执行过了。
能告诉我改动哪里后可以运行吗?我怎么没有看出来改的是哪里呢?谢谢。