解决Python对齐文本字符串问题


Posted in Python onAugust 28, 2019

问题

我们需要以某种对齐方式将文本做格式化处理。

解决方案

对于基本的字符串对齐要求,可以使用字符串的ljust()、rjust()和center()方法。示例如下:

>>> text = 'Hello World'
>>> text.ljust(20)
'Hello World '
>>> text.rjust(20)
'   Hello World'
>>> text.center(20)
'  Hello World '
>>>

所有这些方法都可接受一个可选的填充字符。例如:

>>> text.rjust(20,'=')
'=========Hello World'
>>> text.center(20,'*')
'****Hello World*****'
>>>

format()函数也可以用来轻松完成对齐的任务。需要做的就是合理利用'<'、'>',或'^'字符以及一个期望的宽度值[2]。例如:

>>> format(text, '>20')
'   Hello World'
>>> format(text, '<20')
'Hello World '
>>> format(text, '^20')
'  Hello World '
>>>

如果想包含空格之外的填充字符,可以在对齐字符之前指定:

>>> format(text, '=>20s')
'=========Hello World'
>>> format(text, '*^20s')
'****Hello World*****'
>>>

当格式化多个值时,这些格式化代码也可以用在format()方法中。例如:

>>> '{:>10s} {:>10s}'.format('Hello', 'World')
' Hello  World'
>>>

format()的好处之一是它并不是特定于字符串的。它能作用于任何值,这使得它更加通用。例如,可以对数字做格式化处理:

>>> x = 1.2345
>>> format(x, '>10')
'  1.2345'
>>> format(x, '^10.2f')
'  1.23 '

讨论

在比较老的代码中,通常会发现%操作符用来格式化文本。例如:

>>> '%-20s' % text
'Hello World '
>>> '%20s' % text
'           Hello World'

但是在新的代码中,我们应该会更钟情于使用format()函数或方法。format()比%操作符提供的功能要强大多了。此外,format()可作用于任意类型的对象,比字符串的ljust()、rjust()以及center()方法要更加通用。

总结

以上所述是小编给大家介绍的解决Python对齐文本字符串问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

Python 相关文章推荐
Python对excel文档的操作方法详解
Dec 10 Python
在Python中使用Neo4j的方法
Mar 14 Python
Python实现从SQL型数据库读写dataframe型数据的方法【基于pandas】
Mar 18 Python
Django文件存储 默认存储系统解析
Aug 02 Python
python函数装饰器之带参数的函数和带参数的装饰器用法示例
Nov 06 Python
浅析python,PyCharm,Anaconda三者之间的关系
Nov 27 Python
pytorch 指定gpu训练与多gpu并行训练示例
Dec 31 Python
Python网页解析器使用实例详解
May 30 Python
利用keras使用神经网络预测销量操作
Jul 07 Python
基于python实现计算两组数据P值
Jul 10 Python
通过实例简单了解python yield使用方法
Aug 06 Python
关于python pygame游戏进行声音添加的技巧
Oct 24 Python
python+jinja2实现接口数据批量生成工具
Aug 28 #Python
解决Atom安装Hydrogen无法运行python3的问题
Aug 28 #Python
opencv实现简单人脸识别
Feb 19 #Python
Atom Python 配置Python3 解释器的方法
Aug 28 #Python
python聚类算法解决方案(rest接口/mpp数据库/json数据/下载图片及数据)
Aug 28 #Python
Numpy的简单用法小结
Aug 28 #Python
Python 通过截图匹配原图中的位置(opencv)实例
Aug 27 #Python
You might like
php将12小时制转换成24小时制的方法
2015/03/31 PHP
PHP实现XML与数据格式进行转换类实例
2015/07/29 PHP
PHP排序算法之简单选择排序(Simple Selection Sort)实例分析
2018/04/20 PHP
php接口实现拖拽排序功能
2018/04/23 PHP
PHP利用DWZ.CN服务生成短网址
2019/08/11 PHP
PHP解决高并发的优化方案实例
2020/12/10 PHP
目前流行的JavaScript库的介绍及对比
2013/09/29 Javascript
js面向对象的写法
2016/02/19 Javascript
最全面的JS倒计时代码
2016/09/17 Javascript
半个小时学json(json传递示例)
2016/12/25 Javascript
webpack打包单页面如何引用的js
2017/06/07 Javascript
深入理解ES6的迭代器与生成器
2017/08/19 Javascript
js原生方法被覆盖,从新赋值原生的方法
2018/01/02 Javascript
VUE基于NUXT的SSR 服务端渲染
2018/11/30 Javascript
vue中v-for通过动态绑定class实现触发效果
2018/12/06 Javascript
详解从react转职到vue开发的项目准备
2019/01/14 Javascript
微信小程序3种位置API的使用方法详解
2019/08/05 Javascript
Antd中单个DatePicker限定时间输入范围操作
2020/10/29 Javascript
Python深入学习之对象的属性
2014/08/31 Python
Python中使用PyQt把网页转换成PDF操作代码实例
2015/04/23 Python
Python3实现从指定路径查找文件的方法
2015/05/22 Python
Win8下python3.5.1安装教程
2020/07/29 Python
python使用matplotlib模块绘制多条折线图、散点图
2020/04/26 Python
PyQt5实现画布小程序
2020/05/30 Python
2分钟教你实现环形/扇形菜单(基础版)
2020/01/15 HTML / CSS
来自全球大都市的高级街头服饰:Pegador
2018/01/03 全球购物
华为消费者德国官方网站:HUAWEI德国
2020/11/03 全球购物
自我鉴定的范文
2013/10/03 职场文书
高中毕业生生活的自我评价
2013/12/08 职场文书
法人单位适用的授权委托书
2014/09/19 职场文书
2015公务员试用期工作总结
2014/12/12 职场文书
2015年学校后勤工作总结
2015/04/08 职场文书
个人销售励志奋斗口号
2019/12/05 职场文书
SQLServer 错误: 15404,无法获取有关 Windows NT 组/用户 WIN-8IVSNAQS8T7\Administrator 的信息
2021/06/30 SQL Server
面试分析分布式架构Redis热点key大Value解决方案
2022/03/13 Redis
Ruby处理CSV数据方法详解
2022/04/18 Ruby