python的占位格式符 %
# 格式化输出
name = "sz"
age = 18
# 我的名字是xxx,年龄是xxx
print("我的名字是%s,年龄是%d"%(name,age))
这是我们上节课学的格式化输出,打印一句话,这句话有2个参数是变量,相当于我们先设计一个语句模板,然后在里面填写参数,%号的位置相当于变量,说白了就是挖了两个坑,这时候需要我们把对应的数值填写进去就ok了,而今天主要学习下这个%占位格式符的用途和写法。
# %[(name)][flags][width][.precision]typecode
# []里面的内容可以省略,只需要写%和typecode就可以,typecode是类型码,比如例子中的s和d,类型码有很多种。
这个%号有很多参数,[ ]里面的内容是可以省略不写的,但是要知道其中的含义
先了解下(name)
name的意思是:表示根据指定的名称(key),查找对应的值,格式化字符串当中。根据上面的例子延伸。
name = "sz"
age = 18
# 我的名字是xxx,年龄是xxx
print("我的名字是%(mz)s,年龄是%(nl)d"%({"mz":name,"nl":age}))
name就相当于模板里面的值,注意模板后面也要写出来,然后去上面找对应的值,mz和nl就是上面注解中的key。大括号里面是“字典”的意思
width表示的是占用的宽度
name = "sz"
age = 18
# (name)
# 表示,根据
# width,表示占用的宽度
print("%10d" % age)
结果是:
18
结果靠右对齐,左面是8个空格,一共占了10位。默认是用空格代替没有值得字符位,如果在上面的代码10前面加一个数字0,就相当于用数字0来代替没有值得字符位,此时就不是空格了。(一般用于时钟表示“07:27”,前面需要显示一个0,不是空格,就需要这样的表示,但是不可以加其他数字,加入其他数字就相当于width要占用多少位,比如%10d,在10前面加的不是0,加了一个1,width的参数就相当于110位了)
flags表示对齐的方式(默认是右对齐,如果在10前面加了一个“-”就会靠左对齐,右面是8个空格,同样一共占了10个字符位。)
print("%-10d" % age)
结果是:
18
print("% d" % age)
结果是:
18
如果中间加一个空格,那么结果前面就有一位空格,这个例子是为了和负数对其用的(负数前面有个-负号,这里空着一位),但如果中间加两个空格结果依然是前面空一位。
.precision 表示的是浮点数,也就是带小数点的数,这样数的一个写法
name = "sz"
age = 18.5
print("%.2f" % age)
结果是:
18.50
这里把之前的d换成了f,因为f是表示浮点数的字符,.2表示的是小数点保留后两位(不要把小数点.忘记了)。
typecode是%函数的必填项,它是类型符,因为它里面没有空格。它就相当于我们之前写的d或f,石必写的,以下是各种符号表示的含义
python的占位格式符 %的更多相关文章
- Python学习之格式符
%s 字符串 (采用str()的显示) %r 字符串 (采用repr()的显示) %c 单个字符 %b 二进制整数 %d 十进制整数 %i 十进制整数 %o ...
- 第3.8节 Python百分号占位符的字符串格式化方法
一. 概念 格式化字符串就是将一些变量转换为字符串并按一定格式输出字符串,包括指定字符的位置.对齐方式.空位补充方式等.Python提供了多种字符串格式设置方法.本节先介绍一种简 ...
- 跟我一起学python(1):占位符
模板 格式化字符串时,Python使用一个字符串作为模板.模板中有格式符,这些格式符为真实值预留位置,并说明真实数值应该呈现的格式.Python用一个tuple将多个值传递给模板,每个值对应一个格式符 ...
- Python中的切片符
最近在学python,感觉切片符有点难以理解.在网上查了点资料,然后做个总结 理解切片符,首先得知道数组是从0开始的, 而且切片符最后一个是-1. 我们先定义个数组 a=[1,2,3,4,5] 切 ...
- python进行mp3格式判断
python进行mp3格式判断 项目中使用mp3格式进行音效播放,遇到一个mp3文件在程序中死活播不出声音,最后发现它是wav格式的文件,却以mp3结尾.要对资源进行mp3格式判断,那么如何判断呢,用 ...
- python编程语言缩进格式
python的缩进格式是python语法中最特别的一点,很多已经习惯了其他语言的朋友再去学python的话,开始会觉的不太 习惯. 怎么看怎么都觉的别扭,也有一些朋友因为这个特别的格式与python失 ...
- python打印表格式数据,留出正确的空格和段落星号或注释
python打印表格式数据,留出正确的空格,格式化打出 代码如下: def printPicnic(itemsDict,leftWidth,rightWidth): print('PICNIC ITE ...
- C#格式符
在输出字符串时,使用格式说明 使字符串显示适当的格式,比如:货币格式,或者科学计数法.百分比等. 以下是格式化的数字字符串 格式. {index, alignment: format} 例如: ; ...
- C语言的格式符
转至:http://blog.csdn.net/zhanzheng520/article/details/10434791 一.格式符含义 1.d格式符:按十进制格式输出. %d ...
随机推荐
- 使用@property
@property装饰器就是负责把一个方法变成属性调用的,既能检查参数,又可以用类似属性这样简单的方式来访问类的变量 class Student(object): @property def scor ...
- 了解PID控制
@2019-03-07 [小记] 了解PID控制 比例 - 积分 - 微分 积分 --- 记忆过去 比例 --- 了解现在 微分 --- 预测未来
- 题解 UVA1567 【A simple stone game】
题目大意 一堆石子有n个,首先第一个人开始可以去1~
- [NOI2005]维护数列——平衡树观止
本题题解并不详细,不推荐大家看这一篇. 可以看这篇 题目描述 请写一个程序,要求维护一个数列,支持以下 6 种操作:(请注意,格式栏 中的下划线‘ _ ’表示实际输入文件中的空格) 100%的数据中, ...
- Math & Number Theory
数学 数论: 莫比乌斯反演 矩阵游戏 小学数学,欧拉定理 组合: 线性代数: 高斯消元 其他: 一些题目
- 安利一个刚考过的信息安全认证Security+
在目前的信息安全大潮之下,人才是信息安全发展的关键.而目前国内的信息安全人才是非常匮乏的,拥有国际信息安全认证的人才,在未来职业发展.升职加薪的道路上必将优于普通的信息安全从业者. 果哥今天推荐201 ...
- Gym - 101350A Sherlock Bones(思维)
The great dog detective Sherlock Bones is on the verge of a new discovery. But for this problem, he ...
- Java多线程_复习(更新中!!)
java多线程的常见例子 一.相关知识: Java多线程程序设计到的知识: (一)对同一个数量进行操作 (二)对同一个对象进行操作 (三)回调方法使用 (四)线程同步,死锁问题 (五)线程通信 等等 ...
- Hadoop生态圈-zookeeper完全分布式部署
Hadoop生态圈-zookeeper完全分布式部署 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 本篇博客部署是建立在Hadoop高可用基础之上的,关于Hadoop高可用部署请参 ...
- Recurrent Neural Networks(RNN) 循环神经网络初探
1. 针对机器学习/深度神经网络“记忆能力”的讨论 0x1:数据规律的本质是能代表此类数据的通用模式 - 数据挖掘的本质是在进行模式提取 数据的本质是存储信息的介质,而模式(pattern)是信息的一 ...