在python中,如何在编程运行时动态地将模块添加到包中.
我希望能够从外部进程将模块添加到包目录中,并且能够在我的程序中使用这些新模块:
import package
def doSomething(name):
pkg = __import__("package." + name)
mod = getattr(pkg, name)
mod.doSomething()
Run Code Online (Sandbox Code Playgroud)
我该怎么做呢?
我有一个简单的代码,其中我为分配内存int8,int16,int32和int64类型和打印出变量的地址:
package main
import (
"fmt"
"runtime"
)
func main() {
fmt.Println(runtime.Compiler, runtime.GOARCH, runtime.GOOS)
var i8 *int8
var i16 *int16
var i32 *int32
var i64 *int64
fmt.Println(&i8)
fmt.Println(&i16)
fmt.Println(&i32)
fmt.Println(&i64)
}
Run Code Online (Sandbox Code Playgroud)
这是我收到的输出:
gc amd64 darwin
0xc00008a020
0xc00008a028
0xc00008a030
0xc00008a038
Run Code Online (Sandbox Code Playgroud)
从这里我可以得出结论,仅int16使用 4 个字节,其他类型使用 8 个字节。
我的推理和检查分配的内存大小的方法是否正确?
如果是,在 64 位架构系统上使用int8,int32有什么好处?