PYTHON 字符串格式化

复制代码
字符串的格式化
字符串的格式化采用了类似于C语言的%格式化符号。
>>>y,m,d=2016,7,8
>>> "%d-%02d-%02d"%(y,m,d)
'2016-07-08'
从Python 2.6开始,引入了format内置函数来实现字符串格式化,它使用花括号}和冒号:来替代百分号%。与百分号格式化相比,它的功能更加强大而灵活。
1)通过位置格式化
>>> '{0},{1}'.format('kfc',20)
'kfc,20'
>>>'{},{}'.format('kfc',20)
'kfc,20'
>>> '{1},{0},{1}'.format('kfc',20)
'20,kfc,20'
2)通过关键字参数格式化
>>> '{name},{age}'.format(name='kfc',age=20)
'kfc,20'
3)通过对象属性格式化
>>> class Person:
    def __init__(self,name,age):
        self.name, self.age= name, age
    def __str__(self):
        return 'Person named {self.name} is {self.age} year old.'.format(self=self)
>>> str(Person('kfc',20))
'Person named kfc is 20 year old.'
4)通过下标格式化
>>> person =['kfc',20]
>>> '{0[0]},{0[1]}'.format(person)
'kfc,20'
5)格式限定符format方法中还有一个非常重要的格式限定符,用冒号:表达。
6)填充与对齐
填充常跟对齐一起使用。^、<、>分别代表居中对齐、左对齐和右对齐,其后面的参数为宽度。冒号:后面为填充的字符,只能是一个字符,默认以空格填充。
>>>'{:>3}'.format('123')
'123'
>>>'{:>3}'.format('123')
'123'
>>> '{:>3}'.format('1234')
'1234'
>>> '{:>6}'.format('1234')
' 1234'
>>> '{:0>6}'.format('1234')
'001234'
>>> '{:x>6}'.format('1234')
'××1234'
7)精度与类型f
浮点数精度采用类型f限定。
>>> import math
>>> math.pi
3.141592653589793
>>>'{:.5f}'.format(math.pi)
'3.14159'
8)其他类型与多进制有关:b、d、o、x分别是二进制、十进制、八进制、十六进制。主要是数值转换到各个进制的字符串类型。此外,还可以采用内置函数进行互相转换。
>>>'{:b}'.format(255)
'11111111'
>>>'{:d}'.format(255)
'255'
>>>'{:o}'.format(255)
'377'
>>>'{:×}'.format(255)
'ff'
9)千位分隔符
在财务应用中,经常使用千分位进行划分。关于这一点format方法也替你想到了。
>>> '{:,}'.format(31415926)
'31,415, 926'
Python 2.7和Python 3都支持%和format方法,推荐逐渐过渡到format方法来格式化字符串。
复制代码

 

posted @   myrj  阅读(20)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 如何调用 DeepSeek 的自然语言处理 API 接口并集成到在线客服系统
· 【译】Visual Studio 中新的强大生产力特性
· 2025年我用 Compose 写了一个 Todo App
历史上的今天:
2022-04-10 hashcat破解密码实例
2021-04-10 C语言:fopen
2021-04-10 C语言:按行读TXT文件
2021-04-10 C语言:读写TXT
点击右上角即可分享
微信分享提示