关于python字符串format的一些花式用法
目录:
前提:
python中字符串的format功能非常强大,可以说完全能够替代其他的字符串使用方法,但是在后期的项目开发中使用的并不是特别的多,
以至于想用的时候会想不起来准确的使用方法,所以在这里汇总一下format的常用方法,方便以后查阅
基础
format的大括号用法可以实现字符串的拼接:
In [1]: '大家好,这里是{},我是博主{}'.format('博客园', 'pywjh')
Out[1]: '大家好,这里是博客园,我是博主pywjh'
大括号内可以打乱顺序,根据{}里面的顺序写进format就好了:
In [2]: '大家好,这里是{1},我是博主{0}'.format('pywjh', '博客园')
Out[2]: '大家好,这里是博客园,我是博主pywjh'
保留输出的小数点位数
In [22]: '{:.2f}'.format(1.222)
Out[22]: '1.22'
限制输出数字的位数,也要保留小数位数
In [30]: '{:5.2f}'.format(1.222)
Out[30]: ' 1.22' # 空格、一、小数点、二、二 共5位
千位分隔符号输出:
In [60]: '{:,}'.format(132456)
Out[60]: '132,456'
百分号输出:
In [48]: '{:.2%}'.format(0.333333)
Out[48]: '33.33%'
In [49]: '{:.1%}'.format(0.333333)
Out[49]: '33.3%'
在项目开发中常用到的输出技巧:
In [50]: a = 10
In [51]: f'a的值是{a}!'
Out[51]: 'a的值是10!'
以及:
In [55]: b = '大家好,我是{}!!!'.format
In [56]: b('pywjh')
Out[56]: '大家好,我是pywjh!!!'
实战
- 给定一个数字 123456,请采用宽度为 25、右对齐方式打印输出,使用加号“+”填充。
In [57]: '{:+>25}'.format(123456)
Out[57]: '+++++++++++++++++++123456'
- 给定一个数字12345678.9,请增加千位分隔符号,设置宽度为30、右对齐方式打印输出,使用空格填充。
In [59]: '{:>30,}'.format(13245678.9)
Out[59]: ' 13,245,678.9'
- 给定一个整数数字0x1010,请依次输出Python语言中十六进制、十进制、八进制和二进制表示形式,使用英文逗号分隔。
In [62]: '0x{0:x}, {0:}, 0o{0:o}, 0b{0:b}'.format(0x1010)
Out[62]: '0x1010, 4112, 0o10020, 0b1000000010000'
- 编写 Python 程序输出一个具有如下风格效果的文本,用作文本进度条样式,部分代码如下,填写空格处。
10%@==
20%@====
100%@====================
前三个数字,右对齐;后面字符,左对齐
文本中左侧一段输出 N 的值,右侧一段根据 N 的值输出等号,中间用 @ 分隔,等号个数为 N 与 5 的整除商的值,例如,当 N 等于 10 时,输出 2 个等号。
N = input() # N取值范围是0—100,整数
print("{:>3}%@{}".format(N,"="*(N//5)))
- 根据输入字符串 s,输出一个宽度为 15 字符,字符串 s 居中显示,以“=”填充的格式。如果输入字符串超过 15 个字符,则输出字符串前 15 个字符。提示代码如下:
s = input()
print(____①____)
| 输入 | 输出 | |
| 示例 1 |
|
|
s = input() # "请输入一个字符串:"
print("{:=^15}".format(s[0:15]))
关于python字符串format的一些花式用法的更多相关文章
- Python字符串与格式化的一点用法
#python的基本语法网上已经有很多详细的解释了,写在这里方便自己记忆一些 1.python于C语言不同的是,python没有字符的概念,所谓的字符就是长度为1的字符串,使用切片或者索引同样可以对字 ...
- Python 字符串、列表和元组用法详解
1.通用函数 len() #列表的元素个数.字符串的长度 2.''' '''与'\ '用法详解 s='''this is a text ''' -->输出s ---> 'this\nis\ ...
- python 字符串 string模块导入及用法
字符串也是一个模块,有自己的方法,可以通过模块导入的方式来调用 1,string模块导入 import string 2, 其用法 string.ascii_lowercase string.dig ...
- Python中用format函数格式化字符串的用法
这篇文章主要介绍了Python中用format函数格式化字符串的用法,格式化字符串是Python学习当中的基础知识,本文主要针对Python2.7.x版本,需要的朋友可以参考下 自python2. ...
- python 字符串格式化输出 %d,%s及 format函数
旧式格式化方式:%s,%d 1.顺序填入格式化内容 s = "hello %s, hello %d"%("world", 100) print(s) 结果: ' ...
- Python字符串类型格式化之format方法
python字符串格式化一般使用 format() 方法,用法如下: <模板字符串>.format(<逗号分割的参数>) 其中模板字符串中可以由一个或多个 {} 组成的 槽 , ...
- Python 的格式化字符串format函数
阅读mattkang在csdn中的博客<飘逸的python - 增强的格式化字符串format函数>所做笔记 自从python2.6开始,新增了一种格式化字符串的函数str.format( ...
- Python格式化字符串--format
format格式化字符串方法相较于老版%格式方法的优点: 1.不需要理会数据类型的问题,在%方法中'%s'只能替代字符串类型. 2.单个参数可以多次输出,参数顺序可以不相同. 3.填充方式十分灵活,对 ...
- python字符串-内置方法用法分析
1.字母大小写相关(中文无效) 1.1 S.upper() -> string 返回一个字母全部大写的副本
随机推荐
- 插入排序(1)——直接插入排序(insert sort)
假设有一组无序序列 R0, R1, ... , RN-1. (1) 我们先将这个序列中下标为 0 的元素视为元素个数为 1 的有序序列. (2) 然后,我们要依次把 R1, R2, ... , RN- ...
- 乐视云监控数据存放到influxdb中
3.9 监控.告警系统 监控报警我们分PaaS平台和业务应用两大类. PaaS平台主要聚焦在基础设施和LeEngine的各个服务组件的监控报警(比如主机CPU,内存,IO,磁盘空间,LeEng ...
- sql server数据库添加记录
转自:http://jingyan.baidu.com/article/f25ef254449a9a482c1b8293.html
- JSP-Runoob:JSP 服务器响应
ylbtech-JSP-Runoob:JSP 服务器响应 1.返回顶部 1. JSP 服务器响应 Response响应对象主要将JSP容器处理后的结果传回到客户端.可以通过response变量设置HT ...
- bzoj3550
费用流+线性规划 搞了很长时间... 我们可以设立式子,a[1]+a[2]+a[3]+...+a[n]<=k , ... , a[2 * n + 1]+ ... +a[3*n]<=k a是 ...
- IDEA Spark Streaming Flume数据源 --解决无法转化为实际输入数据,及中文乱码(Scala)
需要三步: 1.shell:往 1234 端口写数据 nc localhost 1234 2.shell: 启动flume服务 cd /usr/local2/flume/bin ./flume-ng ...
- centos6.4 ssh免密码登陆(只需三个步骤)
学习Hadoop的时候,用到的.这里作为记录. 以下是最简洁的方式: 4台虚拟机: 用户:root.hadoop hostname 分别是:Master.Hadoop.Slave1.Hadoop.Sl ...
- PCB genesis连孔加除毛刺孔(圆孔与槽孔)实现方法(二)
一.为什么 连孔加除毛刺孔 原因是 PCB板材中含有玻璃纤维, 毛刺产生位置在于2个孔相交位置,由于此处钻刀受力不均导致纤维切削不断形成毛刺 ,为了解决这个问题:在钻完2个连孔后,在相交处再钻一个孔, ...
- GIT分支的一些开发心得
从本地的master分支创建新的分支 $ git checkout -b dev Switched to a new branch 'dev' 上面那条命令可以分为两步 $ git branch de ...
- Python基础数据类型(四) tuple元祖
元祖tuple(,) 元祖就是不可变的列表 元祖用()表示,元素与元素之间用逗号隔开,数据类型没有限制 tu = ('科比','詹姆斯','乔丹') tu = tuple('123') 小括号中 有一 ...