Python字符串类型及格式化问题

发布时间:

一、字符串类型

1)字符串是字符的序列表示,根据字符的内容分为单行字符串和多行字符串。

2)单行字符串可以由一对单引号(’)或双引号(“)作为边界来表示,单引号和双引号作用相同

3)多行字符串可以由一对三单引号(''')或三双引号(""")作为边界来表示,两者作用相同。

二、字符串类型

1)Python语言转义符:\

eg:\n表示换行 \\表示反斜杠 \'表示单引号 \"表示双引号 \t表示制表符(TAB)等。

>>>print("既需要'单引号' 又需要\"双引号\"")
既需要'单引号'又需要"双引号"

三、字符串的索引

1)字符串是一个字符序列:字符串最左端位置标记为0,一次增加。对字符串中某个字符的检索被称为索引,索引的使用方式如下:

<字符串或字符串变量>[序号]

2)如果字符串长度为L,正向递增需要以最左侧字符序号为0,向右依次递增,最右侧字符序号为L -1;反向递增序号以最右侧字符序号为-1,向左依次递减,最左侧字符符号为-L。

3)字符串以Unicode编码存储,字符串的英文字符和中文字符都算作1个字符

>>>"青青子衿,悠悠我心。"[-5]
'悠'
>>>s="青青子衿,悠悠我心。"
>>>s[5]
'悠'

四、字符串的切片

1)对字符串中某个字串或区间的检索被称为切片。切片的使用方式如下:

<字符串或字符串变量>[N:M]

>>>"青青子衿,悠悠我心。"[8:4]
''
>>>"青青子衿,悠悠我心。"[:4]
'青青子衿'
>>>"青青子衿,悠悠我心。"[5:]
'悠悠我心。'
>>>print("青青子衿 悠悠我心。"[5:])
悠悠我心

五、format()方法的基本使用

1)字符串format()方法的基本使用格式是:

<模板字符串>.format(<逗号分隔的参数>)

其中,模板字符串是一个由字符串和槽组成的字符串,用来控制字符串和变量的显示效果。槽用大括号({})表示,对应format()方法中逗号分隔的参数

>>>"{}曰:学而时习之,不亦说乎。".format("孔子")
'孔子曰:学而时习之,不亦说乎。'

2)如果模板字符串有多个槽,且槽内没有指定序号,则按照槽出现的顺序分别对应.format()方法中的不同参数。

>>>"{}曰:学而时习之,不亦{}。".format("孔子","说乎")

‘孔子曰:学而时习之,不亦说乎。’

3)可以通过format()参数得序号在模板字符串槽中指定参数的使用,参数从0开始编号

>>>"{1}曰:学而时习之,不亦{0}。".format("说乎","孔子")
‘孔子曰:学而时习之,不亦说乎。’
>>>"(1)曰:{{学而时习之,不亦{0}}}。".format("说乎","孔子")
'孔子曰:{学而时习之,不亦说乎}。'

六、format()方法的格式控制

1)format()方法中模板字符串的槽除了包括参数符号,还可以包括格式控制信息。

{<参数符号>:<格式控制标记>}

2)格式控制标记用来控制参数显示的格式。格式控制标记包括:<填充>,<对齐>,<宽度>,<.精度>,<类型>等6个字段,这些字段都是可选的,可以组合使用

Python字符串类型及格式化问题

3)<填充>,<对齐>和<宽度>主要用于对显示格式的规范。

4)宽度指当前槽的设定输出字符宽度,如果该槽参数实际值比宽度设定值大,则使用参数实际长度。如果该值的实际位数小于设定宽度,则按照对齐指定方式在宽度内对齐,默认以空格字符补全。

5)对齐字段分别使用<、 >和^三个符号表示左对齐,右对齐和居中对齐。

6)填充字段可以修改默认填充字符,填充字符只能有一个。

7)<.精度><类型>主要用于对数值本身的规范。

8)<.精度>由小数点(.)开头。对于浮点数,精度表示小数部分输出的有效位数。对于字符串,精度表示输出的最大长度,小数点可以理解为对数值的有效截取。

9)<类型>表示输出整数和浮点数类型的格式规则

10)对于整数类型,输出格式包括6种

b:输出整数的二进制方式;

c:输出整数对应的Unicode字符

d:输出整数的十进制方式

o:输出整数的八进制方式

x:输出整数的小写十六进制方式

X:输出整数的大写十六进制方式

11)对于浮点数类型,输出格式包括四种:

e:输出浮点数对应的小写字母e的指数形式

E:输出浮点数对应的大写字母E的指数形式

f:输出浮点数的标准浮点形式

%:输出浮点数的百分形式