当前位置: 首页 > 面试题库 >

可以在运动场中进口哪些包裹?

单于耘豪
2023-03-14
问题内容

我在http://play.golang.org/上无法找到在go
park中导入哪些软件包的列表时遇到了麻烦。我正在尝试为ebnf使用(显然是实验性的)软件包。但是,即使是简短的程序也不会从中golang.org导入(第4行的导入中断):

package main

import "fmt"
import "golang.org/x/exp/ebnf"

const g = `
Production  = name "=" [ Expression ] "." .
Expression  = Alternative { "|" Alternative } .
Alternative = Term { Term } .
Term        = name | token [ "…" token ] | Group | Option | Repetition .
Group       = "(" Expression ")" .
Option      = "[" Expression "]" .
Repetition  = "{" Expression "}" .`

func main() {
    fmt.Println(g)
}

是否在只有golang.org/src/中的基本软件包会导入的地方声明(如果是这种情况)?

我真的很想玩这个实验性程序包,甚至喜欢currency在操场上使用非实验性补充库。


问题答案:

About操场上按钮给出了一些提示:

除了一些例外,游乐场可以使用大多数标准库。

通过 标准库 中的封装 标准库 的意思,这是上市的 软件包 页面,根据
标准库
部分。
其他
部分下列出的软件包不符合要求(这是您尝试过的-
该软件包golang.org/x/exp/ebnf属于“
其他” 类别下列出的实验性和不推荐使用的软件包)。

如果您想进一步了解Playground实施,则必须阅读该链接:

围棋博客:围棋场内

这是一个详尽的运动场测试,用于导入所有标准库包,以表明它们至少可以导入,但这并不意味着可以合理地使用它们中的所有( 甚至任何东西
)。标准库中唯一出现编译错误的软件包是runtime/cgo;
出于明显的原因,不包含没有可构建Go源文件的“软件包”(因为如果文件夹不包含至少一个可构建Go源文件,则该文件夹不是软件包)。

这是Playground链接,您可以自己尝试。

package main

import (
    _ "archive/tar"
    _ "archive/zip"

    _ "bufio"
    _ "bytes"

    _ "compress/bzip2"
    _ "compress/flate"
    _ "compress/gzip"
    _ "compress/lzw"
    _ "compress/zlib"

    _ "container/heap"
    _ "container/list"
    _ "container/ring"

    _ "crypto"
    _ "crypto/aes"
    _ "crypto/cipher"
    _ "crypto/des"
    _ "crypto/dsa"
    _ "crypto/ecdsa"
    _ "crypto/elliptic"
    _ "crypto/hmac"
    _ "crypto/md5"
    _ "crypto/rand"
    _ "crypto/rc4"
    _ "crypto/rsa"
    _ "crypto/sha1"
    _ "crypto/sha256"
    _ "crypto/sha512"
    _ "crypto/subtle"
    _ "crypto/tls"
    _ "crypto/x509"
    _ "crypto/x509/pkix"

    _ "database/sql"
    _ "database/sql/driver"

    _ "debug/dwarf"
    _ "debug/elf"
    _ "debug/gosym"
    _ "debug/macho"
    _ "debug/pe"
    _ "debug/plan9obj"

    _ "encoding"
    _ "encoding/ascii85"
    _ "encoding/asn1"
    _ "encoding/base32"
    _ "encoding/base64"
    _ "encoding/binary"
    _ "encoding/csv"
    _ "encoding/gob"
    _ "encoding/hex"
    _ "encoding/json"
    _ "encoding/pem"
    _ "encoding/xml"

    _ "errors"
    _ "expvar"
    _ "flag"
    _ "fmt"

    _ "go/ast"
    _ "go/build"
    _ "go/constant"
    _ "go/doc"
    _ "go/format"
    _ "go/importer"
    _ "go/parser"
    _ "go/printer"
    _ "go/scanner"
    _ "go/token"
    _ "go/types"

    _ "hash"
    _ "hash/adler32"
    _ "hash/crc32"
    _ "hash/crc64"
    _ "hash/fnv"

    _ "html"
    _ "html/template"

    _ "image"
    _ "image/color"
    _ "image/color/palette"
    _ "image/draw"
    _ "image/gif"
    _ "image/jpeg"
    _ "image/png"

    _ "index/suffixarray"

    _ "io"
    _ "io/ioutil"

    _ "log"
    _ "log/syslog"

    _ "math"
    _ "math/big"
    _ "math/cmplx"
    _ "math/rand"

    _ "mime"
    _ "mime/multipart"
    _ "mime/quotedprintable"

    _ "net"
    _ "net/http"
    _ "net/http/cgi"
    _ "net/http/cookiejar"
    _ "net/http/fcgi"
    _ "net/http/httptest"
    _ "net/http/httputil"
    _ "net/http/pprof"
    _ "net/mail"
    _ "net/rpc"
    _ "net/rpc/jsonrpc"
    _ "net/smtp"
    _ "net/textproto"
    _ "net/url"

    _ "os"
    _ "os/exec"
    _ "os/signal"
    _ "os/user"

    _ "path"
    _ "path/filepath"

    _ "reflect"
    _ "regexp"
    _ "regexp/syntax"

    _ "runtime"
    // _ "runtime/cgo"  // ERROR: missing Go type information
                        // for global symbol: .dynsym size 60
    _ "runtime/debug"
    _ "runtime/pprof"
    _ "runtime/race"
    _ "runtime/trace"

    _ "sort"
    _ "strconv"
    _ "strings"
    _ "sync"
    _ "sync/atomic"
    _ "syscall"

    _ "testing"
    _ "testing/iotest"
    _ "testing/quick"

    _ "text/scanner"
    _ "text/tabwriter"
    _ "text/template"
    _ "text/template/parse"

    _ "time"
    _ "unicode"
    _ "unicode/utf16"
    _ "unicode/utf8"
    _ "unsafe"
)

func main() {
    println("ok")
}


 类似资料:
  • 问题内容: 标签中可以包含哪些有效的html元素(如果有)? 问题答案: 内联元素(除其他外)可以包含其他内联元素和文本节点。锚点可以包含一个范围,该范围可以包含一个文本节点。 通常,块级元素可以包含内联元素和其他块级元素。通常,内联元素可以仅包含数据和其他内联元素。这种结构上的区别固有的思想是,块元素比内联元素创建“更大”的结构。 在其他的答案指出,你不能嵌套的在。

  • 问题内容: 通常,Android应用程序是用Java编写的。但是我听说也可以使用Scala或其他语言。而且我还读到,可以包含本机C / C ++代码。 是否有可用的推荐人/清单显示可以使用的语言? 问题答案: 在发布时,它是用于构建可分发的第三方Android软件的唯一官方支持的编程语言。 Android Native Development Kit(Android NDK),开发人员可以使用和构

  • 问题内容: 我想我了解什么是指针,但我不太了解何时使用它。 下面的摘录来自“ A Tour of Go”。 “ * Vertex”和“&Vertex”的目的是什么? 我用“顶点”替换了它们,并且运行良好。 问题答案: 这不是指针/值区分的特别好例子,因为在这种情况下它们是可互换的!当您需要(从另一个函数)“远程”更改数据时,指针很有用。 正如您将注意到的那样,这不会改变任何东西(严格来说,它会更改

  • Kotlin编译器给了我以下警告: 警告:(399,1)Kotlin:内联“…”的预期性能影响可能是无关紧要的。内联最适用于具有lambda参数的函数 在这种情况下,我想取消显示此警告。但是,我不知道给什么值,也找不到任何文档说明接受什么值。 可以为提供哪些可能的值,它们是什么意思?

  • 谷歌(遗憾地)计划破坏存储权限,使应用程序无法使用标准文件API(和文件路径)访问文件系统。许多人反对它,因为它改变了应用程序访问存储的方式,在很多方面,它是一个受限的API。 因此,如果我们希望处理各种存储卷并访问其中的所有文件,我们将需要在未来的Android版本上完全使用SAF(存储访问框架)(在Android Q上,我们至少可以暂时使用一个标志来使用正常的存储权限)。 例如,假设您想创建一

  • 本文向大家介绍CSS选择器有哪些?哪些属性可以继承?相关面试题,主要包含被问及CSS选择器有哪些?哪些属性可以继承?时的应答技巧和注意事项,需要的朋友参考一下 选择器 通配符 id class 标签 后代选择器 子选择器 兄弟选择器 属性选择器 伪类选择器 伪元素选择器 可以继承的属性 font-size font-weight font-style font-family color