如何在Windows下获取当前处理的文件名

2 投票
2 回答
873 浏览
提问于 2025-04-16 21:26

我刚接触Python,想做一个简单的修改。我们在Windows 7上用mako生成一个模板文件,我想把输出文件开头的注释从:

/////////////////////////////////////////////////////////////////
// This file is automatically generated by Mako
/////////////////////////////////////////////////////////////////

改成

/////////////////////////////////////////////////////////////////
// This file is automatically generated by Mako from ${filename}
/////////////////////////////////////////////////////////////////

那么,实际的代码应该怎么写,才能插入正在处理的文件名呢?

2 个回答

1

要获取Python脚本本身的名字,可以使用 __file__ 这个东西:

$ echo "print __file__" > test.py                    
$ python test.py 
test.py
4

在编程中,有时候我们会遇到一些问题,需要在代码中找到解决方案。比如,有人可能在使用某个库或者框架时,遇到了一些错误或者不明白的地方。这时候,查看其他人的提问和回答就很有帮助。

在StackOverflow上,很多开发者会分享他们的经验和解决方案。你可以看到别人是如何解决类似的问题的,这样可以帮助你更好地理解自己的问题,并找到合适的解决办法。

总之,StackOverflow是一个很好的资源,可以让你学习到很多实用的编程知识和技巧。

import os

filename = os.path.basename(__file__)
print ('this is generated by ' + filename)

撰写回答