格式化输出

例如我想输出 我的名字是xxxx 年龄是xxxx

name = "Lucy"
age = 17
print("我的名字是%s,年龄是%d"%(name, age))
# %[(name)][flags][width][.precision]typecode
# []:可以省略
# (name)
# 表示,根据指定的名称(key),查找对应的值,格式化到字符串当中

 mathScore = 100
englishScore = 96
print("我的数学成绩是%d,英文成绩是%d"%(mathScore, englishScore))
# 如果我想要把分数颠倒过来,除了下面这种方式还有其他方式吗?
print("我的数学成绩是%d,英文成绩是%d"%(englishScore, mathScore)) # 可以使用下面这种方式(字典) 借助(name),用法%(name)d
print("我的数学成绩是%(es)d,英文成绩是%(ms)d"%({"es": englishScore, "ms": mathScore}))

 # width 表示占用的宽度
print("%d" % mathScore) print("%10d" % mathScore)

输出结果::


 flags,表示对齐的方式。默认右对齐
# 空:表示右对齐
# -:表示左对齐
# 空格:''为一个空格,表示在正数的左侧填充一个空格,从而与负数对齐。
# 0:表示使用0填充

 print("%-10d" % mathScore)
# 无论有多少空格,都只会填充一个空格
print("% d" % mathScore) # 使用0填充 当输出时间的时候,我们先设置宽度为2,然后在宽度前面添加0作为填充。如果数字宽度是1位,则用0填充,如果数字宽度是2位,则不进行填充
min = 8
sec = 9
print("%02d:%02d" % (min, sec)) min = 36
sec = 59
print("%02d:%02d" % (min, sec))

输出结果::


# .precision  .precision表示的是数字小数点后的精度。当数字为整数的时候,使用%d,当数字是小数的时候,使用%f,精确到2位就使用.2,精确到10位就使用.10

 score = 89.9
# 此时只能输出89
print("%d" % score) # 此时小数点后面的数字就能输出出来了
print("%.1f" % score) # 默认的小数点后面是6位
print("%f" % score)

输出结果为:

89
89.9
89.900000

# typecode  这个是必填项

# 注意:二进制是0b开头,八进制是0o开头,十六进制是0x开头
#
# i/d:将整数、浮点数转换成十进制表示,并将其格式化到指定位置。
#
# o:将整数、浮点数转换成八进制表示,并将其格式化到指定位置。
#
# x:将整数、浮点数转换成十六进制表示,并将其格式化到指定位置。
#
# e:将整数、浮点数转换成科学计数法表示,并将其格式化到指定位置(小写e)。
#
# E:将整数、浮点数转换成科学计数法表示,并将其格式化到指定位置(小写E)。
#
# f:将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认小数点后保留6位)。
#
# F:将整数、浮点数转换成浮点数表示,并将其格式化到指定位置(默认小数点后保留6位)。
#
# g:自动调整将整数、浮点数转换成浮点型或科学计数法表示(超过6位使用科学计数法),并将其格式化到指定位置(如果是科学计数这是e)
#
# G:自动调整将整数、浮点数转换成浮点型或科学计数法表示(超过6位使用科学计数法),并将其格式化到指定位置(如果是科学计数这是E)
 print("将二进制转换成十进制::", end="")
print("%d" % 0b1010) print("将八进制转换成十进制::", end="")
print("%d" % 0o10) print("将十六进制进制转换成十进制::", end="")
print("%d" % 0x10) print("将十进制进制进制转换成八进制::", end="")
print("%o" % 10) # 科学计数法表示
print("%e" % 18889999)
# 2.字符串
#
# s:获取传入对象的_str_方法的返回值,并将其格式化到指定位置。
#
# r:获取传入对象的_repr_方法的返回值,并将其格式化到指定位置。
#
# c:整数:将数字转换成其Unicode对应的,10进制范围0<=i<1114111(python27只支持0-255);字符:将字符添加到指定位置。 # 获取指定数字的Unicode码
print("%c" % 97) # %:当字符串中存在格式化标志时,需要用%%表示一个百分号。99%
mScore = 99
print("%d%%" % mScore) # python中百分号格式化是不存在自动将整数转换成二进制表示的方式。
#
# %b是错误的
 

Python格式符说明的更多相关文章

  1. python的占位格式符 %

    # 格式化输出name = "sz"age = 18# 我的名字是xxx,年龄是xxxprint("我的名字是%s,年龄是%d"%(name,age)) 这是我 ...

  2. 【转载】Python 描述符简介

    来源:Alex Starostin 链接:www.ibm.com/developerworks/cn/opensource/os-pythondescriptors/ 关于Python@修饰符的文章可 ...

  3. Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助

    Python第二天  变量  运算符与表达式  input()与raw_input()区别  字符编码  python转义符  字符串格式化  format函数字符串格式化  帮助 目录 Pychar ...

  4. 杂项之python描述符协议

    杂项之python描述符协议 本节内容 由来 描述符协议概念 类的静态方法及类方法实现原理 类作为装饰器使用 1. 由来 闲来无事去看了看django中的内置分页方法,发现里面用到了类作为装饰器来使用 ...

  5. python描述符(descriptor)、属性(property)、函数(类)装饰器(decorator )原理实例详解

     1.前言 Python的描述符是接触到Python核心编程中一个比较难以理解的内容,自己在学习的过程中也遇到过很多的疑惑,通过google和阅读源码,现将自己的理解和心得记录下来,也为正在为了该问题 ...

  6. python描述符descriptor(一)

    Python 描述符是一种创建托管属性的方法.每当一个属性被查询时,一个动作就会发生.这个动作默认是get,set或者delete.不过,有时候某个应用可能会有 更多的需求,需要你设计一些更复杂的动作 ...

  7. python描述符 descriptor

    descriptor 在python中,如果一个新式类定义了__get__, __set__, __delete__方法中的一个或者多个,那么称之为descriptor.descriptor通常用来改 ...

  8. C#格式符

    在输出字符串时,使用格式说明  使字符串显示适当的格式,比如:货币格式,或者科学计数法.百分比等. 以下是格式化的数字字符串  格式. {index, alignment: format} 例如: ; ...

  9. C语言的格式符

    转至:http://blog.csdn.net/zhanzheng520/article/details/10434791   一.格式符含义 1.d格式符:按十进制格式输出. %d          ...

随机推荐

  1. BJOI 模拟赛 #3 题解

    T1 一个网格,每个点有权值,求有多少条路径权值乘积不小于 $n$ $R,C \leq 300, n \leq 10^6$ sol: 暴力 dp 是 $O(R \times C \times n)$ ...

  2. 《DSP using MATLAB》示例Example 8.11

    %% ------------------------------------------------------------------------ %% Output Info about thi ...

  3. Cocos2d-x学习笔记1

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/u014734779/article/details/26077453 1.创建新的cocos2d-x ...

  4. 【转】理解Linux 配置文件

    原文网址:http://www.mike.org.cn/articles/understanding-linux-configuration-files-linux/ 介绍每个 Linux 程序都是一 ...

  5. jdk1.8新特性之接口default方法

    众所周知,default是java的关键字之一,使用场景是配合switch关键字用于条件分支的默认项.但自从java的jdk1.8横空出世以后,它就被赋予了另一项很酷的能力——在接口中定义非抽象方法. ...

  6. windows下使用linux命令搜文件

    在linux系统的黑幕下,我们只能通过find命令来搜文件,而在windows的界面里,我们只能通过搜索框来搜.两者各有利弊,前者单调但高效,后者用户体验好却比较慢.能不能在windows使用linu ...

  7. jeecg选择按钮带入其他单据值

    前端的标签 <input class="inputxt" id="fshimian" name="fshimian" ignore=& ...

  8. expdp实现oracle远程服务器导出到本地

    expdp导出 expdp user/pwd@orcl directory=dd network_link=dblink dumpfile=fileName.dmp //user为本地用户名 //ne ...

  9. Micro-PaaS(Docker+K8S)

    1.概述 Docker是一种Linux容器工具集,它是为构建(Build).交付(Ship)和运行(Run)分布式应用而设计的. Kubernates:是开源的容器集群管理系统.它构建在Docker技 ...

  10. 手动封装OpenCV1.0的IplImage读取保存功能遇到的小问题

    最近准备重新学习图像处理的知识,主要目的是自己实现一遍图像处理的算法,所以除了读取.保存图像外的操作都自己写,没想到直接封装OpenCV的读取.保存功能的第一步就出错.关键代码如下 void MyIm ...