自学python笔记9--字符串

自学python笔记9–字符串

今天学习的主要内容为Python字符串格式设置选项和方法。

一、设置字符串的格式

1. %s(转换说明符):指出了要将值插入什么地方

指定要设置其格式的值时,可使用单个值(如字符串或数字),可使用元组。s意味着将值视为字符串进行格式设置。如果指定的值不是字符串,将使用str将其转换为字符串。
在这里插入图片描述
2.字符串方法format
使用这种方法时,每个替换字段都用花括号括起,其中可能包含名称,还可能包含有关如何对相应的值进行转换和格式设置的信息。
在这里插入图片描述
在这里插入图片描述

3.基本转换
3.1
指定要在字段中包含的值后,就可添加有关如何设置其格式的指令了。首先,可以提供一个转换标志。
在这里插入图片描述
上述三个标志(s、r和a)指定分别使用str、repr和ascii进行转换。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
3.2 宽度、精度和千位分隔符

3.2.1对齐
数字对齐:
在这里插入图片描述
(上述例子中表明,包括数字一共十位)
处于好奇试验如下:
在这里插入图片描述

字符串对齐:
在这里插入图片描述

3.2.2精度
精度也是使用整数指定的
在这里插入图片描述

3.2.3千位分隔符
可使用逗号来指出你要添加千位分隔符。
在这里插入图片描述
3.3符号、对齐和用 0 填充
3.3.1补0
在这里插入图片描述
3.3.2对齐
要指定左对齐、右对齐和居中,可分别使用<、>和^。
在这里插入图片描述
3.3.3填充
使用填充字符来扩充对齐说明符,这样将使用指定的字符而不是默认的空格来填充。
在这里插入图片描述
3.3.4符号
在这里插入图片描述
更具体的说明符=,它指定将填充字符放在符号和数字之间
在这里插入图片描述
如果要给正数加上符号,可使用说明符+(将其放在对齐说明符后面),而不是默认的-。如果将符号说明符指定为空格,会在正数前面加上空格而不是+。
在这里插入图片描述
在这里插入图片描述
对于二进制、八进制和十六进制转换,将加上一个前缀。
在这里插入图片描述

4.实例

# 根据指定的宽度打印格式良好的价格列表  35

width = int(input('Please enter width: '))
price_width = 10
item_width = width - price_width
header_fmt = '{{:{}}}{{:>{}}}'.format(item_width, price_width)
fmt = '{{:{}}}{{:>{}.2f}}'.format(item_width, price_width)
print('=' * width)
print(header_fmt.format('Item', 'Price'))
print('-' * width)
print(fmt.format('Apples', 0.4))
print(fmt.format('Pears', 0.5))
print(fmt.format('Cantaloupes', 1.92))
print(fmt.format('Dried Apricots (16 oz.)', 8))
print(fmt.format('Prunes (4 lbs.)', 12))
print('=' * width)

结果:
在这里插入图片描述
二、字符串方法
在这里插入图片描述
1.center
方法center通过在两边添加填充字符(默认为空格)让字符串居中。

#center
a="the middle by jimmy eat world."
print(a.center(39))
print(a.center(39,'*'))

结果为:
在这里插入图片描述
2.find
方法find在字符串中查找子串。如果找到,就返回子串的第一个字符的索引,否则返回-1。

#find
b="with a moo-moo here,and a moo-moo there."
print(b.find('moo'))

结果为:
在这里插入图片描述
3.join
join是一个非常重要的字符串方法,其作用与split相反,用于合并序列的元素,所合并序列的元素必须都是字符串。

#join
seq=['1','2','3','4','5']
sep='+'
print(sep.join(seq))
print(seq)

结果为:
在这里插入图片描述

dirs=['','usr','bin','env']
print('/'.join(dirs))
print('D'+'\\'.join(dirs))

结果为:
在这里插入图片描述
4.lower

方法lower返回字符串的小写版本。

#lower
c='ABCDEFG'
print(c.lower())

结果为:
在这里插入图片描述
在这里插入图片描述

5.replace
方法replace将指定子串都替换为另一个字符串,并返回替换后的结果。

#replace
d='this is a test'
print(d.replace('is','are'))

结果为:
在这里插入图片描述
6.split
split是一个非常重要的字符串方法,其作用与join相反,用于将字符串拆分为序列。

#split
e='1+2+3+4+5'
print(e.split('+'))

f='using the default'
print(f.split())

结果为:
在这里插入图片描述
7.strip
方法strip将字符串开头和末尾的空白(但不包括中间的空白)删除,并返回删除后的结果。

#strip
g='    international interaction     '
print(g.strip())

g1='*** ABCD  ** EFG!!!**'
print(g1.strip('!*'))#一个字符串参数中指定要删除哪些字符
print(g1.strip('*!'))

结果为:
在这里插入图片描述
8.translate
使用translate前必须创建一个转换表。这个转换表指出了不同Unicode码点之间的转换关系。要创建转换表,可对字符串类型str调用方法maketrans,这个方法接受两个参数:两个长度相同的字符串,它们指定要将第一个字符串中的每个字符都替换为第二个字符串中的相应字符。

#translate
table=str.maketrans('cs','kz')#c->k,s->z
h='this is an incredible test'
print(h.translate(table))

结果为:
在这里插入图片描述
另,第三个参数指定要将哪些字母删除。
在这里插入图片描述

持续更新。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值