濮阳杆衣贸易有限公司

主頁(yè) > 知識(shí)庫(kù) > Go 每日一庫(kù)之termtables的使用

Go 每日一庫(kù)之termtables的使用

熱門標(biāo)簽:揚(yáng)州電銷外呼系統(tǒng)軟件 開通400電話申請(qǐng)流程 百度地圖標(biāo)注位置網(wǎng)站 400手機(jī)電話免費(fèi)辦理 上海企業(yè)外呼系統(tǒng)排名 智能語(yǔ)音電銷的機(jī)器人 如何利用高德地圖標(biāo)注家 武漢百應(yīng)人工智能電銷機(jī)器人 電腦外呼系統(tǒng)輻射大嗎

今天學(xué)個(gè)簡(jiǎn)單點(diǎn)的😀,termtables處理表格形式數(shù)據(jù)的輸出。適用于隨時(shí)隨地的輸出一些狀態(tài)或統(tǒng)計(jì)數(shù)據(jù),便于觀察和調(diào)試。是一個(gè)很小巧的工具庫(kù)。我在學(xué)習(xí)dateparse庫(kù)時(shí)偶爾見遇到了這個(gè)庫(kù)。

快速使用

本文代碼使用 Go Modules。
創(chuàng)建目錄并初始化:

$ mkdir termtables  cd termtables
$ go mod init github.com/darjun/go-daily-lib/termtables

安裝termtables庫(kù):

$ go get -u github.com/scylladb/termtables

最原始的termtables庫(kù)為github.com/apcera/termtables,然后原始倉(cāng)庫(kù)已經(jīng)被刪除了。目前使用的都是其他人 fork 的倉(cāng)庫(kù)。
使用:

package main

import (
  "fmt"
  "github.com/scylladb/termtables"
)

func main() {
  t := termtables.CreateTable()
  t.AddHeaders("User", "Age")
  t.AddRow("dj", 18)
  t.AddRow("darjun", 30)
  fmt.Println(t.Render())
}

運(yùn)行:

$ go run main.go
+--------+-----+
| User   | Age |
+--------+-----+
| dj     | 18  |
| darjun | 30  |
+--------+-----+

使用很方便,首先調(diào)用termtables.CreateTable()創(chuàng)建一個(gè)表格對(duì)象,調(diào)用該對(duì)象的AddHeader()方法添加頭部信息,然后調(diào)用AddRow()逐行添加數(shù)據(jù)。最后調(diào)用Render()返回渲染后的表格字符串。

模式

處理普通的文本表格,termtables還支持輸出 HTML 和 Markdown 格式的表格。只需要調(diào)用表格對(duì)象的SetModeHTML()/SetModeMarkdown()方法設(shè)置一些模式即可 。

func main() {
  t := termtables.CreateTable()
  t.AddHeaders("User", "Age")
  t.AddRow("dj", 18)
  t.AddRow("darjun", 30)
  fmt.Println("HTML:")
  t.SetModeHTML()
  fmt.Println(t.Render())

  fmt.Println("Markdown:")
  t.SetModeMarkdown()
  fmt.Println(t.Render())
}

運(yùn)行:

$ go run main.go
HTML:
table class="termtable">
thead>
tr>th>User/th>th>Age/th>/tr>
/thead>
tbody>
tr>td>dj/td>td>18/td>/tr>
tr>td>darjun/td>td>30/td>/tr>
/tbody>
/table>

Markdown:
| User   | Age |
| ------ | --- |
| dj     | 18  |
| darjun | 30  |

輸出的格式可以直接用在 Markdown/HTML 文件中。

總結(jié)

今天輕松一下,了解了一個(gè)小巧的工具庫(kù)termtables。雖然自己實(shí)現(xiàn)一個(gè)類似的也不復(fù)雜,termtables庫(kù)額外幫我們處理了編碼、字寬等比較繁瑣的細(xì)節(jié)。有需要在寫示例程序中打印類似表格之類的數(shù)據(jù)不妨試一試termtables。
大家如果發(fā)現(xiàn)好玩、好用的 Go 語(yǔ)言庫(kù),歡迎到 Go 每日一庫(kù) GitHub 上提交 issue😄
參考

Go 每日一庫(kù) GitHub:https://github.com/darjun/go-daily-lib

到此這篇關(guān)于Go 每日一庫(kù)之termtables的使用的文章就介紹到這了,更多相關(guān)Go termtables內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Go語(yǔ)言操作mysql數(shù)據(jù)庫(kù)簡(jiǎn)單例子
  • 深入解析Go語(yǔ)言的io.ioutil標(biāo)準(zhǔn)庫(kù)使用
  • go語(yǔ)言日志記錄庫(kù)簡(jiǎn)單使用方法實(shí)例分析
  • go語(yǔ)言實(shí)現(xiàn)通過(guò)FTP庫(kù)自動(dòng)上傳web日志
  • Go語(yǔ)言連接Oracle數(shù)據(jù)庫(kù)的方法
  • Go語(yǔ)言庫(kù)系列之flag的具體使用
  • Go語(yǔ)言庫(kù)系列之dotsql詳解
  • 模塊一 GO語(yǔ)言基礎(chǔ)知識(shí)-庫(kù)源碼文件

標(biāo)簽:張掖 黑龍江 嘉峪關(guān) 延邊 宜賓 武漢 新余 江西

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Go 每日一庫(kù)之termtables的使用》,本文關(guān)鍵詞  每日,一庫(kù),之,termtables,的,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Go 每日一庫(kù)之termtables的使用》相關(guān)的同類信息!
  • 本頁(yè)收集關(guān)于Go 每日一庫(kù)之termtables的使用的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    朔州市| 邢台市| 武冈市| 河津市| 南汇区| 深州市| 临高县| 大新县| 广州市| 肥东县| 吉隆县| 德兴市| 乳源| 宣城市| 阜新市| 柳州市| 沙田区| 卢湾区| 大英县| 古浪县| 民和| 孟连| 陇南市| 宜兰市| 疏附县| 沙雅县| 潞西市| 迭部县| 蒲城县| 通海县| 汝州市| 永城市| 泰来县| 博湖县| 和平县| 响水县| 陕西省| 汪清县| 海阳市| 织金县| 泾阳县|