1021字符串

1021字符串

字符串相关方法

center 、rjust、ljust、zfill

字符串.center(长度, 填充字符)
原字符串在中间,填充对半向左取整排两边

字符串.rjust(长度, 填充字符)
原字符串在右边,填充在左边

字符串.ljust(长度, 填充字符)
原字符串在左边,填充在右边

字符串.zfill(长度) == 字符串.rjust(长度, ‘0’)

str1 = 'abc'
print(str1.center(7, '1'))          # '11abc11'
print('你好'.center(6, '*'))         # '**你好**'
print('你好'.center(7, '*'))         # '***你好**'
print('hello'.rjust(10, '%'))       # '%%%%%hello'
print('hello'.ljust(10, '%'))       # 'hello%%%%%'
print('abc'.zfill(5))           # '00abc'

count

字符串1.count(字符串2) - 统计字符串1中字符串2出现的次数

字符串1.count(字符串2, 开始下标, 结束下标) - 统计开始下标和结束下标确定范围内字符串2的个数

find、index、rfind、rindex

字符串1.find(字符串2) - 获取字符串2在字符串1中第一次出现的位置, 找不到返回-1

字符串1.find(字符串2, 开始下标, 结束下标)

字符串1.index(字符串2) - 获取字符串2在字符串1中第一次出现的位置,找不到报错!

字符串1.index(字符串2, 开始下标, 结束下标)

rfind和rindex, 找的时候从后往前找!

其他

字符串.isalnum() - 判断字符串中是否只包含数字、字母、中文

字符串.isalpha() - 判断字符串中是否只包含字母和中文

字符串.isdigit() - 判断字符串是否是纯数字字符串(数字字符)

字符串.isnumeric() - 判断字符串是否是纯数字字符串(意义是数字的字符)

字符串.isspace() - 判断字符串是否是纯空白字符串

字符串.isupper() - 判断字符串中所有的字母是否都是大写字母

字符串.islower() - 判断字符串中所有的字母是否都是小写字母

join

字符串.join(序列) - 将序列中的元素通过指定的字符串合并成一个新的字符串(序列中的元素必须全部都是字符串)

list1 = ['name', 'age', 'gender']
# 'nameagegender'
result = ''.join(list1)
print(result)       # 'nameagegender'

# 'name+age+gender'
result = '+'.join(list1)
print(result)       # name+age+gender

str1 = 'abc'
# 'aAndbAndC'
result = 'And'.join(str1)
print(result)       # 'aAndbAndc'
相关练习

nums = [100, 200, 300, 400], 将nums合并成:‘100-200-300-400’

nums = [100, 200, 300, 400]   # ['100', '200', '300', '400']
result = '-'.join([str(x) for x in nums])
print(result)

已经一个列表,将列表中所有的字符串用’=='连接成一个新的字符串

list1 = [100, 'abc', True, '你好', 'hello', 12.9]
result = '=='.join(x for x in list1 if type(x ) == (str))
print(result)

strip、lstrip、rstrip

字符串.strip() - 去掉字符串前后的空白
str1 = ’ abc 123 ’

print(str1, ';')
print(str1.strip(), ';', sep='')
print(str1.lstrip(), ';', sep='')#去掉左边
print(str1.rstrip(), ';', sep='')#去掉右边

maketrans、translate

str.maketrans(字符串1, 字符串2) - 创建字符串1和字符串2的对应的表
字符串.translate(表)

str1 = 'hello, how are you! abc'

table = str.maketrans('ao', '12')     # a-1,o-2
result = str1.translate(table)
print(result)  #hell2, h2w 1re y2u! 1bc

split()

字符串1.split(字符串2) - 将字符串1中所有的字符串2作为切割点对字符串进行切割

字符串1.split(字符串2, N) - 将字符串1中前N个字符串2作为切割点

replace(重要)

字符串1.replace(字符串2, 字符串3) - 将字符串1中所有的字符串2都替换成字符串3

字符串1.replace(字符串2, 字符串3, N)

字符串格式化

字符串拼接

name = '小明'
age = 18
message = name + '今年' + str(age) + '岁!'
print(message)

字符串部分内容由其他数据决定

a = 10
b = 23
c = 23
d = 100
# 'a:10, b:20, c:23, d:100'
message = 'a:' + str(a) + ', b:' + str(b) + ', c:' + str(c) + ', d:' + str(d)
print(message)

格式字符串

语法: 包含格式占位符的字符串 % (数据1, 数据2, …)

%d - 整数

%s - 字符串

%f - 浮点数

f-string

message = f'a:{a}, b:{b}, c:{c}, d:{d}, a+b:{a+b}'
print(message)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值