三、字符串补充

一、字符串格式化

1、输出函数中的字符串的格式化

  之前有简单地使用了说明了prin函数中字符串的拼接。

name = 'xiong'
age = 21
sex = ''
high = 175
weight = 56
print('我姓%s,性别%s,今年%s岁,身高%scm,体重%skg。'%(name,sex,age,high,weight))

  为了保证绝对正确。只需要将上面的%后的s改为需要拼接的数据类型的对应格式即可。比如整数对应的是%d;对应关系如下所示;

%s格式化字符串
%d格式化整数
%u格式化无符号整型
%c格式化字符及其ASCII码
%f格式化浮点数字,可指定小数点后的精度
%o格式化无符号八进制数
%x格式化无符号十六进制数
%X格式化无符号十六进制数(大写)

上表所列仅仅是部分常用的。完整的用到的时候在查吧。

2、format()的使用方法

  format函数其实是使用在格式化的字符串中留{},在字符串调用format是传入需要填入的数据。例如:

str = '{}朋友,你好啊!'
print(str.format('新来的'))
#新来的朋友,你好啊!

       {}中可以不设置参数,也可以设置,设置的参数可以相同。

  如果不设置参数,那么传入的数据的个数必须与预留的{}的个数一致。且传入的数据会按照传入顺序填入{}中。

  如果设置了参数。传入参数时可以以key-value的形式传入。例如:

str = '{adj}朋友,你好啊!{action}'
print(str.format(action='欢迎欢迎!',adj='新来的'))

  如果{}中设置了标识,那么传入如参数的时候不能不以key-value的形式传入参数。如果非要不以key-value的形式传入,请设置标识为0,1,2,3……

str = '{0}朋友,你好啊!{1}'
print(str.format('新来的','欢迎欢迎'))

  示例,使用字典元素格式化字符串:

  注意:使用列表格式化字符串,一定要是{0[  ] }的形式。

# 通过列表索引设置参数
web_list = ['博客园','www.cnblogs.com']
print('网站名:{0[0]},网址:{0[1]}'.format(web_list))

  示例,使用列表元素格式化字符串:

  注意:传入字典的时候加上**。

# 通过字典设置参数
webdic = {"name": "博客园", "url": "www.cnblogs.com"}
print("网站名:{name}, 地址 {url}".format(**webdic))
 3、format填充与对齐

格式限定符,语法是{}中带:号;

填充常跟对齐一起使用;^、<、>分别是居中、左对齐、右对齐,后面带宽度。:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充

示例:

print( '{:>8}'.format('888'))
'     888'
print('{:^8}'.format('888'))
'  888   '
print('{:<8}'.format('888'))
'888    '
print('{:A>8}'.format('888'))
'AAAAA888'
print('{:A<8}'.format('888'))
'888AAAAA'
4、浮点数精度

直接看代码,个人领悟吧。

print('{:.2f}'.format(3.1415926))
'3.14'

二、字符串中常用的方法

1、把字母全部变成大写:upper()
test_str = 'hello world'
print(test_str.upper())
‘HELLO WORLD’
'可以用变量接收str.upper()'

 可以用变量接收str.upper()

2、把字母全部变成小写:lower()
test_str2= 'HELLO WORLD'
print(test_str2.lower())
'hello world' 
'可以用变量接收str.lower()'
3、首字母大写:capitalize()
test_str = 'hello world'
print(test_str.capitalize())
'Hello world'
'可以用变量接收str.capitalize()
'
4、大小写转换:swapcase()
test_str = 'hello world'
print(test_str.swapcase())
'HELLO WORLD'
'可以使用变量接收str.swapcase()'
5、以什么开头:startwith():
str = 'abcdefg'
print(str.startswith('a'))
'True'
'是以给定的字符或者字符串开始返回True,否则返回False。可以使用变量接收。'
6、以什么结尾:endwith()
str = 'abcdefg'
print(str.endswith('fg'))
'True'
'是以给定的字符或者字符串开始返回True,否则返回False。可以使用变量接收返回值。'
7、统计出现的次数:count()
str = 'ahfdsuagsdiaiwreufh'
a_times = str.count('a')
b_times = str.count('ds')
print(a_times,b_times)# 3   1
'返回值是出现的次数,使用变量接收。'
8、查找下标:find()
str = 'ahfdsuagsdiaiwreufh'
index = str.find('a')
print(index)#0
'如果查找的字符出现多次,返回第一个从左到右匹配到的字符的索引。'
9、字符串替换:replace()
new_str = str.replace('a','A')
print(new_str)#AhfdsuAgsdiAiwreufh
'替换目标字符串中的所有匹配的字符'
10、去除头尾空格:strip()
str = '    hello,i`m fine,and you?   \n'
print(str) 
print(str.strip())
#     hello,i`m fine,and you?   
# 
# hello,i`m fine,and you?
#只能去掉头和尾的换行符合空格
11、获取长度:len()
print(len('hello'))
12、常用is的使用
print('nihao你好'.isalpha())#判断是否全是汉子或者字母,返回True或者False
print('12426'.isdigit())#判断是否全是阿拉伯数字,返回True或者False
print('1234abcd'.isalnum())#判断是否全是数字或者字母,返回True或者False
 13、分割:split()
print('hello| world'.split('|'))#以传入的参数分割目标字符串,分割结果以列表的形式

 

转载于:https://www.cnblogs.com/970401xcj/p/10452676.html

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值