14 包和檔案的關係

2021-09-09 06:23:47 字數 1731 閱讀 1006

08 - 程式結構中初步的介紹了 go 語言和包的結構, 接下來我們將會更加詳細的介紹包和檔案之間的恩愛情仇

go語言當中的包和其他語言的庫或者模組很類似,都是為了支援模組化、封裝、單獨編譯和**重用。

package的使用原則:

示例:為了方便理解,我做了乙個包的示例

// tempconv.go

package tempconv

import

"fmt"

type celsius float64

// 攝氏溫度

type fahrenheit float64

// 華氏溫度

const

( absolutezeroc celsius =

-273.15

// 絕對零度

freezingc celsius =

0// 結冰點溫度

boilingc celsius =

100// 沸水溫度

)

// conv.go

package tempconv

func

ctof

(c celsius) fahrenheit

func

ftoc

(f fahrenheit) celsius

包的路徑:

$gopath/src/gopl/ch2/tempconv
分析:每個原始檔都以包的宣告語句開始,用來指名包的名字。當包被匯入的時候,包內的成員將通過類似tempconv.ctof的形式訪問。

在 go 語言中,每個包的路徑是全域性唯一的。如包gopl/ch2/tempconv全域性唯一的路徑就是$gopath/src/gopl/ch2/tempconv, 每個匯入路徑下面可以有多個xx.go檔案, 這樣可以更加使結構清晰

package main

import

("fmt"

"os"

"strconv"

"gopl/ch2/tempconv"

)func

main()

f := tempconv.

fahrenheit

(t) c := tempconv.

celsius

(t) fmt.

printf

("%s = %s, %s = %s\n"

, f, tempconv.

ftoc

(f), c, tempconv.

ctof

(c))

}}

執行路徑:

$gopath/src/gopl/ch2/cf
執行命令:

$ go run cf.

go32

212-

40

執行結果:

Python基礎 閉包和檔案

期末筆記後期整理,如有問題,請多多指教。1 三個條件 存在於巢狀關係的函式中 巢狀的內部函式引用了外部函式的變數 巢狀的外部函式會將內部函式名作為返回值返回。def outer start 0 count start def inner count 0 1 return count 0 return...

Go語言包和檔案

go語言工作空間 編譯工具對原始碼目錄有嚴格要求,每個工作空間 workspace 必須由bin pkg src三個目錄組成。src 專案原始碼目錄,裡面每乙個子目錄,就是乙個包,包內是go語言的原始碼檔案。pkg go語言編譯的.a 中間檔案存放目錄,可自動生成。bin go語言編譯可執行檔案存放...

Python自學筆記 14 檔案和檔案物件

我在學習linux的檔案時,總結了乙個規律。面對乙個檔案時,要操作這個檔案首先就要開啟這個檔案,然後對其進行讀寫。當然這個讀寫的方式卻有很多。python內建了讀寫檔案的函式,用法和c是相容的。在python內建的函式open用於開啟和建立檔案物件,如下所示 fd open path 開啟檔案 pa...