Golang之字符串格式化
字符串格式化
// Go 之 字符串格式化
//
// Copyright (c) 2015 - Batu
//
package main
import (
    "fmt"
)
type point struct {
    x, y int
}
func main(){
    // 格式化整型。使用`%d`是一种
    // 标准的以十进制来输出整型的方式
    // 有符号十进制整数(int)(%ld、%Ld:长整型数据(long),%hd:输出短整形。)
    fmt.Println("=====%d,输出十进制====")
    fmt.Printf("%d\n", 110)
    // 输出整型的二进制表示方式
    fmt.Println("=====%b,输出二进制====")
    fmt.Printf("%b\n", 110)
    // 输出整型数值所相应的字符(char):一个字节。占8位
    // 可參考 ASCII
    fmt.Println("=====%c,输出一个值的字符(char)====")
    fmt.Printf("%c\n",97)
    // 输出一个值的十六进制,每一个字符串的字节用两个字符输出
    fmt.Println("=====%x,输出一个值的十六进制,每一个字符串的字节用两个字符输出====")
    fmt.Printf("0x%x\n", 10)
    fmt.Printf("%x\n", "abc")
    // 输出浮点型数值
    fmt.Println("=====%f,输出浮点型数值====")
    fmt.Printf("%f\n", 27.89)
    // 输出主要的字符串
    fmt.Println("=====%s,输出基本字符串====")
    fmt.Printf("%s-%s-%s\n","I","am","batu")
    // 输出带双引號的字符串
    fmt.Println("=====%q,输出带双引號的字符串====")
    fmt.Printf("%q\n","string")
    // Go提供了几种打印格式。用来格式化一般的Go值
    p := point{1, 2}
    fmt.Println("=====%p,输出一个指针的值====")
    fmt.Printf("%p\n", &p)
    fmt.Println("=====%v,输出结构体的对象值====")
    fmt.Printf("%v\n", p)
    // 假设所格式化的值是一个结构体对象。那么`%+v`的格式化输出
    fmt.Println("=====%+v,输出结构体的成员名称和值====")
    fmt.Printf("%+v\n", p)
    fmt.Println("=====%#v,输出一个值的Go语法表示方式====")
    fmt.Printf("%#v\n",p)
    fmt.Println("=====%T,输出一个值的数据类型====")
    fmt.Printf("%T\n",p)
    // 当输出数字的时候,常常须要去控制输出的宽度和精度。
    // 能够使用一个位于%后面的数字来控制输出的宽度。默认情况下输出是右对齐的,左边加上空格
    fmt.Println("=====控制输出的宽度和精度====")
    fmt.Printf("|%5d|%5d|\n", 12, 345)
    fmt.Println("=====输出宽度,同一时候指定浮点数====")
    fmt.Printf("|%5.2f|%5.2f|\n", 1.2, 3.45)
    fmt.Println("=====左对齐====")
    fmt.Printf("|%-5.2f|%-5.2f|\n", 1.2, 3.45)
}=====%d,输出十进制====
110
=====%b,输出二进制====
1101110
=====%c,输出一个值的字符(char)====
a
=====%x,输出一个值的十六进制,每一个字符串的字节用两个字符输出====
0xa
616263
=====%f,输出浮点型数值====
27.890000
=====%s,输出基本字符串====
I-am-batu
=====%q,输出带双引號的字符串====
“string”
=====%p,输出一个指针的值====
0xc82000a410
=====%v,输出结构体的对象值====
{1 2}
=====%+v,输出结构体的成员名称和值====
{x:1 y:2}
=====%#v,输出一个值的Go语法表示方式====
main.point{x:1, y:2}
=====%T,输出一个值的数据类型====
main.point
=====控制输出的宽度和精度====
| 12| 345|
=====输出宽度,同一时候指定浮点数====
| 1.20| 3.45|
=====输出宽度,同一时候指定浮点数====
|1.20 |3.45 |
Golang之字符串格式化的更多相关文章
- Golang字符串格式化
		Go对字符串格式化提供了良好的支持.下面我们看些常用的字符串格式化的例子. package main import ( "fmt" "os" ) type po ... 
- Python高手之路【六】python基础之字符串格式化
		Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ... 
- Java 字符串格式化详解
		Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ... 
- Python(四)装饰器、迭代器&生成器、re正则表达式、字符串格式化
		本章内容: 装饰器 迭代器 & 生成器 re 正则表达式 字符串格式化 装饰器 装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等.装饰器是解 ... 
- C++字符串格式化库:CPPFormatLibrary
		这个是很久之前写的,去年总结了一下,将其单独提取出来,作为一个开源库放到了GitHub上,然而CPPFormat之类的名字都已经被抢注了,结果只好注册了一个这么蛋疼的名字:CPPFormatLibra ... 
- js字符串格式化扩展方法
		平时使用js的时候会遇到很多需要拼接字符串的时候,如果是遇到双引号和单引号混合使用,经常会搞混.在C#中有string.Format方法,使用起来非常方便,也很容易理解,所以找到一种参考C#的form ... 
- JAVA字符串格式化-String.format()的使用(转)
		常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重 ... 
- Python字符串格式化
		一.使用格式化符来格式化字符串: Python支持的所有格式化符 格式化符 意义 'd' 返回要格式化对象的十进制表示,如果可以 'i' 返回要格式化对象的十进制表示,如果可以 'o' 返回要格式化对 ... 
- Python 字符串格式化
		Python 字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存 一 ... 
随机推荐
- MYSQL数据库注释
			//修改注释 alter table user comment = '我要修改注释'; //新建表设定表注释及解释说明. create table AuthUser( ID ) primary key ... 
- IIS 管理器无法验证此内置帐户是否有访问权
			解决办法:1.打开iss管理器2.点击网站——localhost3.点击右上角位置的"基本设置"——"链接为"——"特定用户"——" ... 
- Axure 实现批量的勾选和反选
			百度网盘:http://pan.baidu.com/s/1gf4RR2b 1.如何实现批量的勾选和反选的操作? 2.步骤 1)创建3个复选框.2个按钮(全选/反选) 2)设置全选按钮点击事件——选中“ ... 
- 修改windows默认的远程连接端口
			打开注册表,找到以下路径项,并修改为你想要的端口,重启服务器即可. HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Serve ... 
- scala  map操作 简单总结
			在函数式编程中有一个核心的概念之一是转换,所以大部份支持函数式编程语言,都支持一种叫map()的动作,这个动作是可以帮你把某个容器的内容,套上一些动作之后,变成另一个新的容器. 现在我们考虑如何用Op ... 
- HOOK 底层键盘消息---WH_KEYBOARD_LL
			代码:屏蔽三个全局快捷键 代码的作用是屏蔽掉凝视中的三个快捷键. LRESULT CALLBACK LowLevelKeyboardProc (INT nCode, WPARAM wParam, LP ... 
- Easyui入门视频教程 第11集---Window的使用
			目录 Easyui入门视频教程 第11集---Window的使用 Easyui入门视频教程 第10集---Messager的使用 Easyui入门视频教程 第09集---登录完善 图标自定义 ... 
- Linux-/etc/rc.local 或 service 中使用 sudo -u xxx cmd 执行失败(sorry, you must have a tty to run sudo)解决办法
			使用 visudo 命令编辑 /etc/sudoers 1)Defaults requiretty,修改为 #Defaults requiretty,表示不需要控制终端. 2)Defaults req ... 
- (原)python中不同文件之间使用所谓的全局变量
			转载请注明出处: http://www.cnblogs.com/darkknightzh/p/8108640.html 参考网址: https://www.cnblogs.com/20150705-y ... 
- 在centos 5.5 i386 上安装 oracle 10g xe
			1.安装rpm包 nano /v.sh 将下面内容复制进去 #!/bin/bash rpm -Uvh compat-db-4.2.52-5.1.i386.rpm rpm -Uvh compat-lib ... 
