Python格式符说明
格式化输出
例如我想输出 我的名字是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格式符说明的更多相关文章
- python的占位格式符 %
# 格式化输出name = "sz"age = 18# 我的名字是xxx,年龄是xxxprint("我的名字是%s,年龄是%d"%(name,age)) 这是我 ...
- 【转载】Python 描述符简介
来源:Alex Starostin 链接:www.ibm.com/developerworks/cn/opensource/os-pythondescriptors/ 关于Python@修饰符的文章可 ...
- Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助
Python第二天 变量 运算符与表达式 input()与raw_input()区别 字符编码 python转义符 字符串格式化 format函数字符串格式化 帮助 目录 Pychar ...
- 杂项之python描述符协议
杂项之python描述符协议 本节内容 由来 描述符协议概念 类的静态方法及类方法实现原理 类作为装饰器使用 1. 由来 闲来无事去看了看django中的内置分页方法,发现里面用到了类作为装饰器来使用 ...
- python描述符(descriptor)、属性(property)、函数(类)装饰器(decorator )原理实例详解
1.前言 Python的描述符是接触到Python核心编程中一个比较难以理解的内容,自己在学习的过程中也遇到过很多的疑惑,通过google和阅读源码,现将自己的理解和心得记录下来,也为正在为了该问题 ...
- python描述符descriptor(一)
Python 描述符是一种创建托管属性的方法.每当一个属性被查询时,一个动作就会发生.这个动作默认是get,set或者delete.不过,有时候某个应用可能会有 更多的需求,需要你设计一些更复杂的动作 ...
- python描述符 descriptor
descriptor 在python中,如果一个新式类定义了__get__, __set__, __delete__方法中的一个或者多个,那么称之为descriptor.descriptor通常用来改 ...
- C#格式符
在输出字符串时,使用格式说明 使字符串显示适当的格式,比如:货币格式,或者科学计数法.百分比等. 以下是格式化的数字字符串 格式. {index, alignment: format} 例如: ; ...
- C语言的格式符
转至:http://blog.csdn.net/zhanzheng520/article/details/10434791 一.格式符含义 1.d格式符:按十进制格式输出. %d ...
随机推荐
- 51Nod 1439:互质对(用莫比乌斯来容斥)
有n个数字,a11,a22,…,ann.有一个集合,刚开始集合为空.然后有一种操作每次向集合中加入一个数字或者删除一个数字.每次操作给出一个下标x(1 ≤ x ≤ n),如果axx已经在集合中,那么就 ...
- BZOJ4128 Matrix 【BSGS】
BZOJ4128 Matrix Description 给定矩阵A,B和模数p,求最小的x满足 A^x = B (mod p) Input 第一行两个整数n和p,表示矩阵的阶和模数,接下来一个n * ...
- spring--集合注入(常规方法)
数据,list,set,map,Properties 集合注入 package Spring_collections; /** * Created by luozhitao on 2017/8/11. ...
- [MEF]第05篇 MEF的目录(Catalog)筛选
一.演示概述本示例演示如何使用MEF提供的目录(Catalog)的扩展机制实现可过滤导出部件的自定义目录类.主要是通过继承ComposablePartCatalog基类,并实现接口INotifyCom ...
- elipse中开发servlet,直接run as 时出现404错误的解决方法
在elipse中开发servlet时,无论在IDE中运行,还是在浏览器中访问servlet时,一直报404错误, 后发现在build目录中没有生成相应的类文件,后反复采用project中的clean. ...
- Sql Server 2012 存储过程的调试
[一]Sql Server 关于存储过程调试SQL2000是在查询分析器中的对象浏览器中选中需要调试的存储过程,右键----调试---输入参数开始调试.sqlserver2008中则完全不同,变成了必 ...
- Android adb push 和 adb pull
将电脑 D 盘 libreference-ril.so 文件拷贝到安卓设备的 /system/lib 目录下 $ adb remount $ adb root $ adb push D:\libref ...
- STL容器的resize方法
刚才写DFS程序,为了加个创建DFS树然后再次遍历的功能,把初始化的代码给封装到init()函数里,然后直接调用之后对同样是邻接表表示的DFS树进行DFS. 然后令人诧异的是竟然没有打印结果,调试发现 ...
- "废物利用"也抄袭——废旧喷墨打印机和光驱DIY"绘图仪"
很长时间没有写博客,因为各种各样的事情占去大块时间,只有零碎时间偶尔在CSDN逛逛也偶尔回几个帖子.很久以前就看到一些光驱DIY雕刻机之类的,很是向往,最近这几天得闲就TB了一套Arduino UNO ...
- ThreadPoolExecutor之三:自定义线程池-扩展示例
ThreadPoolExecutor是可扩展的,下面一个示例: package com.dxz.threadpool.demo1; import java.util.concurrent.Blocki ...