字符串格式化

// 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之字符串格式化的更多相关文章

  1. Golang字符串格式化

    Go对字符串格式化提供了良好的支持.下面我们看些常用的字符串格式化的例子. package main import ( "fmt" "os" ) type po ...

  2. Python高手之路【六】python基础之字符串格式化

    Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存.[PEP-3101] This ...

  3. Java 字符串格式化详解

    Java 字符串格式化详解 版权声明:本文为博主原创文章,未经博主允许不得转载. 微博:厉圣杰 文中如有纰漏,欢迎大家留言指出. 在 Java 的 String 类中,可以使用 format() 方法 ...

  4. Python(四)装饰器、迭代器&生成器、re正则表达式、字符串格式化

    本章内容: 装饰器 迭代器 & 生成器 re 正则表达式 字符串格式化 装饰器 装饰器是一个很著名的设计模式,经常被用于有切面需求的场景,较为经典的有插入日志.性能测试.事务处理等.装饰器是解 ...

  5. C++字符串格式化库:CPPFormatLibrary

    这个是很久之前写的,去年总结了一下,将其单独提取出来,作为一个开源库放到了GitHub上,然而CPPFormat之类的名字都已经被抢注了,结果只好注册了一个这么蛋疼的名字:CPPFormatLibra ...

  6. js字符串格式化扩展方法

    平时使用js的时候会遇到很多需要拼接字符串的时候,如果是遇到双引号和单引号混合使用,经常会搞混.在C#中有string.Format方法,使用起来非常方便,也很容易理解,所以找到一种参考C#的form ...

  7. JAVA字符串格式化-String.format()的使用(转)

    常规类型的格式化 String类的format()方法用于创建格式化的字符串以及连接多个字符串对象.熟悉C语言的同学应该记得C语言的sprintf()方法,两者有类似之处.format()方法有两种重 ...

  8. Python字符串格式化

    一.使用格式化符来格式化字符串: Python支持的所有格式化符 格式化符 意义 'd' 返回要格式化对象的十进制表示,如果可以 'i' 返回要格式化对象的十进制表示,如果可以 'o' 返回要格式化对 ...

  9. Python 字符串格式化

    Python 字符串格式化 Python的字符串格式化有两种方式: 百分号方式.format方式 百分号的方式相对来说比较老,而format方式则是比较先进的方式,企图替换古老的方式,目前两者并存 一 ...

随机推荐

  1. spring boot 服务 正确关闭方式

    引言 Spring Boot,作为Spring框架对“约定优先于配置(Convention Over Configuration)”理念的最佳实践的产物,它能帮助我们很快捷的创建出独立运行.产品级别的 ...

  2. Appium原理及版本变化细节

    Appium原理小结 Api接口调用selenium的接口,Android底层用android的instrumentation(API2.3+ 通过绑定另外一个独立的selendroid项目来实现的) ...

  3. 基于全注解的SpringMVC+Spring4.2+hibernate4.3框架搭建

    概述 从0到1教你搭建spring+springMVC+hibernate整合框架,基于注解. 本教程框架为基于全注解的SpringMVC+Spring4.2+hibernate4.3,开发工具为my ...

  4. 阿里云k8s私有仓库registry操作管理

    1. 登录阿里云Docker Registry $ sudo docker login --username=*****技 registry.cn-hangzhou.aliyuncs.com 用于登录 ...

  5. uiview封装的基本动画

    基本动画的类型为 基本动画的节奏 UIViewAnimationOptionCurveEaseInOut            = 0 << 16, // default UIViewAn ...

  6. Spring中Autowired注解,Resource注解和xml default-autowire工作方式异同

    前面说到了关于在xml中有提供default-autowire的配置信息,从spring 2.5开始,spring又提供了一个Autowired以及javaEE中标准的Resource注释,都好像可以 ...

  7. CentOS SVN客户端应用

    一.CentOS安装TortoiseSVN yum install -y subversion   二.SVN客户端命令   1.将文件checkout到本地目录 svn checkout path( ...

  8. Swift3.0 - 实现剪切板代码拷贝及跨应用粘贴

    有个需求,点击某个按钮,实现一段内容的拷贝,然后到其他应用内,直接长按粘贴. 实现如下: /// 测试剪切板,实现代码拷贝内容 func testPasteBoard(str:String) { // ...

  9. linux中DHCP服务配置文件/etc/dhcpd.conf详细说明

    DHCP服务的配置 dhcpd.conf 是DHCP服务的配置文件,DHCP服务所有参数都是通过修改dhcpd.conf 文件来实现,安装后dhcpd.conf 是没有做任何配置的,将/usr/sha ...

  10. git学习笔记(三)—— 远程仓库

    一.gitHub&&SSH Key 为git仓库提供托管服务的,所以注册一个github账号,就可以免费获得git远程仓库. 本地Git仓库和GitHub仓库之间的传输是通过SSH加密 ...