有沒有辦法在不需要使用軟件包名稱的情況下加載軟件包的內容?例如,在Python中,你可以這樣做:加載軟件包內容後不使用它們的名稱
from somepackage import *
# access function from somepackage foo
foo()
我想在Go中這麼做。我試過:
import _ "path/to/my/package"
但它沒有工作。如果有人在網上尋找解決方案,我無法表達自己的看法。
有沒有辦法在不需要使用軟件包名稱的情況下加載軟件包的內容?例如,在Python中,你可以這樣做:加載軟件包內容後不使用它們的名稱
from somepackage import *
# access function from somepackage foo
foo()
我想在Go中這麼做。我試過:
import _ "path/to/my/package"
但它沒有工作。如果有人在網上尋找解決方案,我無法表達自己的看法。
The Go Programming Language Specification
如果一個明確的句號(。)出現,而不是一個名稱,在該包的包塊聲明的所有包的 出口標識符將在導入源文件的聲明 文件塊,並且必須是 未經限定符訪問。
使用句點(。)而不是名稱。例如,
package main
import (
"fmt"
. "time"
)
func main() {
fmt.Println(Now()) // time.Now()
}
輸出:
2009-11-10 23:00:00 +0000 UTC
請注意,這是極其罕見的,你不會找到很多的Go代碼,這是否在野外。 – elithrar