go语言下的包名和目录名的对应关系

本文通过一个具体的Go语言代码示例,深入解析了在Go中如何正确地使用import语句来导入不同目录下的包,并强调了import语句实际上只导入目录名而非包名的特点。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

话不多说,看代码:

目录结构如下,顶层文件test.go,有两个子目录,pp和pd。

├── pd
│   └── pa.go
├── pp
│   └── pa.go
└── test.go

test.go的内容如下:

package main

import (
    "fmt"
    "pp"
    pd "pd"
)


func main(){
    fmt.Println(pa.I1)
    fmt.Println(pd.I1)
}

两个目录下的pa.go的内容相同,定义了相同的包名:

package pa 

var I1 int

func init() {
    I1 = 100
}

看出来了没,import只是导入目录名,和包的名字没有任何关系。

结论:import只是导入目录名,相当于添加了PATH变量。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值