格式化输出

例如我想输出 我的名字是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. 值类型struct在foreach中的陷阱

    最近踩了一个坑,为了优化代码,把class改为了struct,结果发现原来的初始化语句没有预期的运行,伪代码如下: public struct A { bool _isActive; public v ...

  2. BZOJ4831: [Lydsy1704月赛]序列操作(非常nice的DP& 贪心)

    4831: [Lydsy1704月赛]序列操作 Time Limit: 1 Sec  Memory Limit: 128 MBSubmit: 250  Solved: 93[Submit][Statu ...

  3. 加密shell

    shc -v -r -T -f script-name >/dev/null 2>&1

  4. GraphQL和RESTful的区别

    GraphQL和RESTful的区别 http://graphql.cn/learn/ https://www.cnblogs.com/Wolfmanlq/p/9094418.html http:// ...

  5. fortran语法笔记

    1,数据类型,fortran支持整形,real型,logical型,char型,复数型.整形分为为长整形和短整形定义长整形的方法 同时声明多个变量的话可以用逗号隔开. 加两个冒号的话可以直接在声明的时 ...

  6. LG3690 【模板】Link Cut Tree (动态树)

    题意 给定n个点以及每个点的权值,要你处理接下来的m个操作.操作有4种.操作从0到3编号.点从1到n编号. 0:后接两个整数(x,y),代表询问从x到y的路径上的点的权值的xor和.保证x到y是联通的 ...

  7. python模块--json \ pickle \ shelve \ XML模块

    一.json模块 之前学习过的eval内置方法可以将一个字符串转成一个python对象,不过eval方法时有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,e ...

  8. fatal: The remote end hung up unexpectedly解决办法

    $ git config --global http.postBuffer 2428000 git config http.postBuffer 524288000 配置完成后 git pull一下, ...

  9. oracle 内存分配和调优 总结

    一直都想总结一下oracle内存调整方面的知识,最近正好优化一个数据库内存参数,查找一些资料并且google很多下.现在记录下来,做下备份.           一.概述:              ...

  10. Spring AOP表达式报错:Pointcut is not well-formed: expecting 'name pattern' at character position

    问题现象: java.lang.IllegalStateException: Failed to load ApplicationContext at org.springframework.test ...