python课堂整理8---字符串格式化
一、字符串格式化(% 和 format)
1. % s 主要接收字符串类型,也可以接收任意类型
tp1 = "i am %s my hobby is alex" % 'lhf'
print(tp1)

tp1 = "i am %s my hobby is %s" % ('lhf', 'dabai')
print(tp1)
、
tp1 = "i am %s my age is %d" % ('lhf', 11)
tp2 = "1 am %s my age is %s" % ('dabai', 12)
print(tp1, tp2, sep="\n")

注意:%d 只接收数字,%s接收任意类型,但是最好物尽其用,便于维护!
2. 打印浮点数,默认保留6位小数,自动四舍五入。
tp1 = "percent %f"% 99.99675854
tp2 = "percent %.3f"% 99.99975854
print(tp1)
print(tp2)

3. 打印百分比
tp1 = "percent %.3f%%"% 99.99635854
print(tp1)

4. 传入值为字典
tp1 = "i am %(name)s age %(age)d" %{"name": "alex", "age": 18}
print(tp1)

tp1 = "i am %(pp).2f" % {"pp": 99.99}
print(tp1)

5. 可选项:+ 右对齐 -左对齐 后面的数字表示宽度, 下面的42控制的颜色
msg = "i am %(name) + 30s my hobby is dabai" % {'name': 'liu'}
msg2 = "i am \033[42;1m%(name) + 30s\033[0m my hobby is dabai" % {'name': 'liu'}
print(msg)
print(msg2)

二、format用法:
1. 按顺序对应
tp1 = "i am {} age {} {}".format("alex", 18, "alex")
print(tp1)

2. 根据后面索引对应
tp1 = "i am {2} age {1} {0}".format("alex", 18, "dabai")
print(tp1)

3. 传入值为字典时,注意前面加两个**
tp1 = "i am {name} age {age} really {name}".format(name = "alex", age = 18)
tp2 = "i am {name} age {age} really {name}".format(**{"name": "alex", "age": 18})
print(tp1)
print(tp2)

4.索引列表对应
tp2 = "i am {0[0]} age {0[1]} really {0[2]}".format(["dabai","22","aaa"],[1,2,3])
print(tp2)

5. 根据类型按顺序输入对应值
tp2 = "i am {:s} age {:d} really {:.2f}".format("dabai", 18, 99.9)
print(tp2)

6. 这种类型下,如果传入值为列表,前面要加 * 号
tp2 = "i am {:s} age {:d} really {:.2f}".format(*["dabai", 18, 99.9])
print(tp2)

7. 不同进制演示(x:小写16进制, X:大写16进制, o: 8 进制,b : 2进制)
tp1 = "number: {:b} {:o} {:d},{:x}, {:X}, {:.2%}".format(15, 15, 15, 15,15,15.2341234)
print(tp1)

tp1 = "number: {0:b} {0:o} {0:d},{0:x}, {0:X}, {0:.2%}".format(15)
print(tp1)

tp1 = "number: {num:b} {num:o} {num:d},{num:x}, {num:X}, {num:.2%}".format(num = 15)
print(tp1)

python课堂整理8---字符串格式化的更多相关文章
- Python中print/format字符串格式化实例
Python 字符串格式化使用 "字符 %格式1 %格式2 字符"%(变量1,变量2),%格式表示接受变量的类型.简单的使用例子如下 # 例:字符串格式化Name = '17jo' ...
- Python基础(十五):Python的3种字符串格式化,做个超全对比!
有时候,为了更方便.灵活的运用字符串.在Python中,正好有3种方式,支持格式化字符串的输出 . 3种字符串格式化工具的简单介绍 python2.5版本之前,我们使用的是老式字符串格式化输出%s. ...
- Python开发——数据类型【字符串格式化】
字符串格式化之——% # 字符串格式化 msg = 'I am %s , My hobby is %s'%('yuan','play') print(msg) # I am yuan , My hob ...
- python的三种字符串格式化方法
1.最方便的 print 'hello %s and %s' % ('df', 'another df') 但是,有时候,我们有很多的参数要进行格式化,这个时候,一个一个一一对应就有点麻烦了,于是就有 ...
- 从零开始的Python学习Episode 3——字符串格式化与for循环
一.字符串格式化 利用一段注释记录想要输出的字符串格式,并用 %s . %d 或 %f 依次代替要输出的数据(%s代表字符串,%d代表数字,%f代表浮点数),然后在这段注释之后依次加上要输出的数据. ...
- python的2种字符串格式化输出
字符串格式化代码(typecode) 法一: %格式使用下面的格式 %[(name)] [flags] [width][.precision] typecode (name)输出字典的value使用, ...
- python课堂整理19----迭代器和生成器
一.概念 • 迭代器协议: 对象必须提供一个next方法,执行该方法要么返回迭代中的下一项,要么引起一个stopIteration异常,以终止迭代(只能往后走,不能往前退) • 协议是一种约定,pyt ...
- python课堂整理18---文件操作(下)
一.b模式,字节方式(二进制的单位),rb wb ab f = open('test.py', 'rb', encoding = 'utf-8') 报错,因为用了b模式,就不能再指定编码格式了,已经指 ...
- python课堂整理4---列表的魔法
一.list 类, 列表 li = [1, 12, 9, "age", ["大白", "小黑"], "alex"] ...
随机推荐
- Spring cloud stream【入门介绍】
案例代码:https://github.com/q279583842q/springcloud-e-book 在实际开发过程中,服务与服务之间通信经常会使用到消息中间件,而以往使用了哪个中间件比如 ...
- Tido 习题-二叉树-树状数组实现
题目描述 这就是一个简单的树状数组入门题 可以动态地进行区间和查询 随时可能会进行更新 #include<iostream> #include<cstdio> #inclu ...
- spring boot 2.x 系列 —— spring boot 整合 servlet 3.0
文章目录 一.说明 1.1 项目结构说明 1.2 项目依赖 二.采用spring 注册方式整合 servlet 2.1 新建过滤器.监听器和servlet 2.2 注册过滤器.监听器和servlet ...
- JS的第一天,精彩内容
1.JS 介绍 js的全称是JavaScript,它是一门前台语言 Java是一门后台语言 ,它们两个之间毫无关系 JavaScript的作者是布兰登,艾奇 前台语言:运行在客户端 后台语言:与数据库 ...
- 【疑难杂症】windows下如何有效重装印象笔记
重装这么简单的操作还用得着写篇文章吗??emmmm,言之有理,简单的重装就是卸载后重新下载最新的安装包然后安装就完事了,这里说的肯定是不简单的重装[滑稽]. 背景是这样的,之前在mac上对印象笔记的笔 ...
- VIM技巧, .vimrc文件
将 .vimrc文件上传到用户家目录下 文件内容如下: autocmd BufNewFile *.py,*.cc,*.sh,*.java exec ":call SetTitle()&quo ...
- [apue] 等待子进程的那些事儿
谈到等待子进程,首先想到的就是SIGCHLD信号与wait函数族,本文试图厘清二者的方方面面,以及组合使用时可能不小心掉进去的坑. 1. 首先谈单独使用SIGCHLD的场景.下面是一段典型的代码片段: ...
- leetcode的Hot100系列--136. 只出现一次的数字
因为之前刚写了461号题目,这个题目与那个很相似, 461号题目用异或来算两个不一样的部分, 那这个题目需要排除一样的部分,并找到不一样的部分. 那么可以再利用一下异或的特性: 1.相同为0,所以,a ...
- Android实现跳转到应用市场进行版本更新功能
最近需要做应用版本更新功能,因为之前已经写过一篇版本更新的功能了,虽然请求接口还是用的HttpUrlConnection,想着改改现在应用使用的请求方式也挺快的嘛,心里开始暗喜,可以偷偷懒了,哈哈哈. ...
- 【全网首发】使用vs2017+qt5.12.4编译64位debug和release的qgis3.4.9
一.摘要: 搜索网络没有发现一篇文章完整的介绍如何编译qgis3.4.x的debug版本,官方的指导也长时间不再更新. 所以前前后后花了4天搞定qgis的debug编译,并成功运行,废话不多说,直接上 ...