博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 字符串format使用
阅读量:5126 次
发布时间:2019-06-13

本文共 1588 字,大约阅读时间需要 5 分钟。

 

 

格式化字符串是程序设计语言中用于指定输出参数的格式化与相对位置的字符串参数。其中的转换说明用于把随后的对应一个或多个函数参数转换为相应的格式输出:格式化字符串中转换说明以外的其他字符原样输出。

1
>>>
"I like %s"

  在这个字符串中,有一个字符 %s 就是一个占位符,这个占位符可以被其他字符串取代

1
2
>>>
"I like %s" 
% 
"girl"
'I like girl'

  自Python2.6以后提倡使用字符串的 format() 方法:string.format(*args,**kwargs)

1
2
>>>
"I like {1} and {0}"
.
format
(
'girl'
,
'dog'
)
'I like dog and girl'

  

1
2
>>>
"I like {0} and {1}"
.
format
(
'girl'
,
'dog'
)
'I like girl and dog'

  {0}和{1}作为占位符占据两个位置,然后调用str.format()方法分别把“girl”和“dog”两个参数传入对应的占位符。str.format()方法返回的是一个字符串(“I like girl and dog”)

既然是格式化,那么就一定会有各种方便适应的格式,让输出的结果符合指定格式

1
2
>>>
"I like {0:5} and {1:>5}"
.
format
(
'girl'
,
'dog'
)
'I like girl  and   dog'

  {0:5}表示第一个位置占用五个字符默认左对齐,{1:>5}表示第二个位置占用五个字符表示右对齐

1
2
>>>
"I like {0:^5} and {1:^5}"
.
format
(
'girl'
,
'dog'
)
'I like girl  and  dog '

  两个占位符都占用五个字符,并且参数在五个占位符中居中对其

1
2
>>>
"I like {0:^5.2} and {1:^5.2}"
.
format
(
'girl'
,
'dog'
)
'I like  gi   and  do  '

  两个占位符都占用五个字符,并且参数在五个占位符中居中对其,传入的字符串只截取两个字符。girl->gi  dog->do

str.format() 中除了可以传入字符串,还可以传入数字

1
"I like {0:10d} and {1:10.1f}"
.
format
(
520
,
5.20
)<br>
'I like        520 and        5.2'

  传入数字默认右对齐,{1:10.1f}中  .1  表示保留小数点后一位,d代表整数,f代表浮点数,如果不在传入浮点数的时候不用 f 则会出现下面情况

1
2
>>>
"I like {0:10} and {1:10.1}"
.
format
(
520
,
5.20
)
'I like        520 and      5e+00'

  

1
2
>>>
"I like {sex} and {pet}"
.
format
(pet 
= 
'dog'
,sex 
= 
'girl'
)
'I like girl and dog'

 这是一种关于字典的格式化方法

1
2
3
>>>data 
= 
{
'name'
:
'jiaxiangfei'
,
'sex'
:
'boy'
}
>>>
'{name} is a {sex}'
.
format
(
*
*
data)
'jiaxiangfei is a boy'

  str.format(*args,**kwargs) 只是字符串的格式化方法

转载于:https://www.cnblogs.com/hanzeng1993/p/11236003.html

你可能感兴趣的文章
timeline时间轴进度“群英荟萃”
查看>>
python if else elif statement
查看>>
网络编程
查看>>
文本隐藏(图片代替文字)
查看>>
java面试题
查看>>
提高码力专题(未完待续)
查看>>
pair的例子
查看>>
前端框架性能对比
查看>>
uva 387 A Puzzling Problem (回溯)
查看>>
12.2日常
查看>>
同步代码时忽略maven项目 target目录
查看>>
Oracle中包的创建
查看>>
团队开发之个人博客八(4月27)
查看>>
发布功能完成
查看>>
【原】小程序常见问题整理
查看>>
C# ITextSharp pdf 自动打印
查看>>
【Java】synchronized与lock的区别
查看>>
django高级应用(分页功能)
查看>>
【转】Linux之printf命令
查看>>
关于PHP会话:session和cookie
查看>>