hafeng45 发表于 2019-7-2 23:36

关于python的内置函数compile的问题

本帖最后由 hafeng45 于 2019-7-3 20:38 编辑

python有个内置函数:compile(source, filename, mode[, flags[, dont_inherit]])
我们使用的时候一般用compile(source,filename = '',mode = 'exec')的形式调用。
现在有两个疑问:
1、第二个参数filename仅仅只能传递空字符串么,那他存在的意义是什么?
2、后来看了文档说第二个参数是用于从文本文件加载待执行的代码,那假如现在我需要加载的待执行代码在1.txt中,应如何使用这个compile函数?

6767 发表于 2019-7-3 01:44

https://docs.python.org/zh-cn/3/library/functions.html#compile

https://www.runoob.com/python/python-func-compile.html

还有类似函数exec,eval

hafeng45 发表于 2019-7-3 20:30

6767 发表于 2019-7-3 01:44
https://docs.python.org/zh-cn/3/library/functions.html#compile

https://www.runoob.com/python/pyth ...

用我会用,我只是想弄明白,如果我要从文件中读取,第二个参数要怎么用

hafeng45 发表于 2019-7-3 20:38

6767 发表于 2019-7-3 01:44
https://docs.python.org/zh-cn/3/library/functions.html#compile

https://www.runoob.com/python/pyth ...

终于弄明白了,这里面写的很好:
https://blog.csdn.net/LaoYuanPython/article/details/90757058

“……第二个参数文件名只是说明这些代码串是来源于 source.py,仅在代码有错时报告错误信息中展示文件名,你完全可以改成不相关的内容。……”

结论:看来compile()函数的第二个参数真的是一个脱裤子放屁多此一举的参数。

此帖完结,感谢回帖。
页: [1]
查看完整版本: 关于python的内置函数compile的问题