类字节对象上的字符串模式

时间:2014-12-19 13:07:41

标签: python-3.x

尝试将我的应用程序移动到Python 3.4 ...

我的代码:

    def Continue(self):
        exec(open(b"file.py").read())

我的错误:

TypeError: can't use a string pattern on a bytes-like object

我(想念)的理解是,通过在文件名字符串前加上'b',我将其转换为像对象一样的必需字节。

任何人都可以惹我生气吗?

1 个答案:

答案 0 :(得分:1)

What is an alternative to execfile in Python 3?

基本打开文件,读取文件,编译代码并运行它。

with open("somefile.py") as f:
    code = compile(f.read(), "somefile.py", 'exec')
    exec(code, global_vars, local_vars)