[python学习笔记] String格式化
格式化
S % (args...) 方式
特点
str里的占位符同java里的占位符。优势
这种方式可以限定格式化的时候接受的数据类型。常见占位符
- %d 接收数字,格式化为 十进制
- %x 接收数字,格式化为 十六进制
- %f 接受数字。格式化为浮点数
- %.nf的方式可以指定 小数点有效位
- %.2f 保留两位小数点
- %s 接受任意类型,格式化为字符串。
范例
msg = '%s 回家吃饭,外边一碗面%.2f块钱,还有%x钱'
print(msg%('旺财',10,255))
输出
旺财 回家吃饭,外边一碗面10.00块钱,还有0xff钱
S.format(args...)
位置参数
使用 {} 或者 {xx} 做占位符。
大括号的内容相当于占位符。
参数可以是索引,从0开始。 也可以是关键字注意,可以不加索引或关键字,但是不能混用。三种方式不能混用下边代码也正常运行
print('姓名 {},体重 {}'.format('狗蛋',120))
# 通过索引 可以使用多次
print('姓名 {0},体重 {1},再次体重{1}'.format('狗蛋',120))
# 通过关键字也可以使用多次
print('姓名{name} 体重{weight}, 再次体重{weight}'.format(name='狗蛋',weight=120))
# 混用报错
print('姓名 {0},体重 {}'.format('狗蛋',120)) # 错误
填充与对齐:这个超级炸
- 格式:
位置或关键字参数 : 补齐符号 对齐方式符号 字符个数
eg: {1:*^8}
位置或关键字参数: 1 代表位置。
分隔符: :
补齐符号: * 表示不足用*补齐。 如果没有,使用空格
对齐方式符号:^ 代表
字符个数: 8 格式化为8位
对齐符号
- ^ 居中对齐. 两侧补足
- < 左对齐。右侧补足
- > 右对齐。 左侧补足
示例
print('姓名 {:^4},体重 {}'.format('狗蛋',120))#姓名 狗蛋 ,体重 120
print('姓名 {0:-<4},体重 {1:_>8}'.format('狗蛋',120))#姓名 狗蛋--,体重 _____120
print('姓名 {name:*^4},体重 {age:#^8}'.format(name='狗蛋',age=120))#姓名 *狗蛋*,体重 ##120###
浮点数精度
- 格式
{位置或关键字:.nf}
- 范例
print('{0:.2f}'.format(12)) #12.0
print('{0:-<8.2f}'.format(12)) #对齐混合使用 12.00---
进制
- b 二进制
- o 八进制
- d 十进制
- x 十六进制
- 范例
print('{0:d}'.format(12)) #12
print('{:x}'.format(12)) #c
print('{:#^8x}'.format(12)) #余对齐混合使用 ###c####
千分位
- 格式
{xx:,}
- 范例
print('{:,}'.format(1024567.3)) # 1,024,567.3
print('{:,.3f}'.format(1024567.3)) # 与精度混用: 1,024,567.300
print('{:+>16,.3f}'.format(1024567.3)) #与对齐混用: +++1,024,567.300
[python学习笔记] String格式化的更多相关文章
- python学习笔记 | strftime()格式化输出时间
time模块 import time t = time.strftime("%Y-%m-%d %H:%M:%S") print(t) datetime模块 import datet ...
- python学习笔记--字符串格式化
字符串和常量 print(r'hello\py\thon') r 代表后面字符不进行转义,原样输出; 表示常量,命名时变量名字大写代表常量.NAME = 'liulixue'; 字符串表示:' ', ...
- Python学习笔记:格式化输出
%d digit%s string%f float程序运用:name = input("please input your name:")age = int(input(" ...
- Python学习笔记(十一)
Python学习笔记(十一): 生成器,迭代器回顾 模块 作业-计算器 1. 生成器,迭代器回顾 1. 列表生成式:[x for x in range(10)] 2. 生成器 (generator o ...
- Python学习笔记之常用函数及说明
Python学习笔记之常用函数及说明 俗话说"好记性不如烂笔头",老祖宗们几千年总结出来的东西还是有些道理的,所以,常用的东西也要记下来,不记不知道,一记吓一跳,乖乖,函数咋这么多 ...
- Python 学习笔记(上)
Python 学习笔记(上) 这份笔记是我在系统地学习python时记录的,它不能算是一份完整的参考,但里面大都是我觉得比较重要的地方. 目录 Python 学习笔记(上) 基础知识 基本输入输出 模 ...
- python学习笔记--Django入门四 管理站点--二
接上一节 python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...
- python学习笔记(五岁以下儿童)深深浅浅的副本复印件,文件和文件夹
python学习笔记(五岁以下儿童) 深拷贝-浅拷贝 浅拷贝就是对引用的拷贝(仅仅拷贝父对象) 深拷贝就是对对象的资源拷贝 普通的复制,仅仅是添加了一个指向同一个地址空间的"标签" ...
- Python学习笔记(十)
Python学习笔记(十): 装饰器的应用 列表生成式 生成器 迭代器 模块:time,random 1. 装饰器的应用-登陆练习 login_status = False # 定义登陆状态 def ...
随机推荐
- ASP.NET CORE 2.0 不小心踩得坑
前言 我是跟着 https://github.com/FQLin/Docs 学习asp.net core 2.0 的 1.EF迁移 EF 的迁移方式有两种: Command-line interfac ...
- java web方面的面试问题,Spring MVC方面的面试问题,摘自java web轻量级开发面试教程
本文摘自java web轻量级开发面试教程: https://baike.baidu.com/item/Java%20Web%E8%BD%BB%E9%87%8F%E7%BA%A7%E5%BC%80%E ...
- JavaSE二次学习之标识符和编程命名相关的内容
前段时间阿里开源了<阿里巴巴 JAVA 开发手册>,里面详细叙述了有关编程命名.sql规约.工程规约等内容,作为一个初学者,只讨论一下-编程规约-的部分. 这几天又重新回去看了看JavaS ...
- mongodb菜鸟整理
一,mongodb的安装与连接 从官网下载后,解压或者安装到某个目录下 1 首先需要自己创建一个db文件夹 ,用于存放数据库的数据 然后还需要创建一个log文件夹,里面需要自己创建一个mongodb ...
- JavaScript 30 - 1 学习笔记
学习JavaScirpt30的笔记! ...虽然英语不是很好,但是跟着来还是学到了一些东西. 1-------> JavaScirpt Drum Kit 功能是这样的 ,敲击键盘上面的按钮, ...
- Spring五个事务隔离级别和七个事务传播行为
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt216 Spring五个事务隔离级别和七个事务传播行为 1. 脏读 :脏读就是 ...
- Java虚拟机JVM内存分区及代码执行机制
详见:http://blog.yemou.net/article/query/info/tytfjhfascvhzxcyt230 1. JVM体系结构 图1 JVM体系结构 方法区:存放JVM ...
- visual studio xamarin 离线安装文件以及 android 模拟器
介绍 为了使用vs开发android我也是煞费苦心,先是从网上各种搜刮文章,然后找各种各样的离线包(因为国内网络是下载不了C#/Xamain)的包的,还有各种各样的安装包,都已快接近奔溃的边缘.每次不 ...
- Unity2017.x 版本的下载安装
Unity2017 版本从2017年7月开始正式发布Unity2017.1版本,为了初学者更加清晰明了的掌握全过程,笔者还是以完整的共19个步骤来给大家演示下载与配置安装的全过程,方便广大读者的无障碍 ...
- 文件系统的几种类型:ext3, swap, RAID, LVM
分类: 架构设计与优化 1. ext3 在异常断电或系统崩溃(不洁关机, unclean system shutdown ).每个已挂载ext2文件系统计算机必须使用e2fsck程序来检查其一致性 ...