python基础:字符串方法灵活应用

本文介绍了多项实用的Python字符串操作技巧,包括去除空格、大小写转换、字符串分割、字符排序等,通过具体示例帮助读者掌握这些基本技能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第1题

去掉字符串中所有的空格

代码及解释

	s = "aa bb cc"
	print(s.replace(' ',''))   #将空格替换不为空格

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
aabbcc

第2题

将字母全部转换为大写和小写

代码及解释

	s = 'ABcd'
	print(s.upper())  # 转化为大写
	print(s.lower())

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
ABCD
abcd

第3题

根据标点符号对字符串进行分行

代码及解释

s = '12,err,456'
print(s.replace(',','\n'))  # 换行符代替逗号

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
12
err
456

第4题

去掉字符串数组中每个字符串的空格(循环)

代码及解释

s = ['ewe ',' we ew']
print('原来的:',s)
s1 = []
for i in s:
	s1.append(i.replace(' ',''))
print('现在的:',s1)

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
原来的: ['ewe ', ' we ew']
现在的: ['ewe', 'weew']

第5题

随意输入心中想到的一个书名,然后输出它的字符串长度(len属性)

代码及解释

book = input('输入一本书名:')
print('长度为:',len(book))

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入一本书名:facebook
长度为: 8

第6题

接收用户输入的字符串,将其中的字符进行排序,并以逆序输出,例如:acdefb - abcdeffedcba

代码及解释

s = input('输入一串英文字符:')  
li = []
for i in s:  # 将输入的字符串添加到列表
    li.append(i)
print(li)
for i in range(len(li)):   # 排序
    for j in range(0, len(li)-i-1):
        if li[j] > li[j+1]:
            li[j], li[j+1] = li[j+1], li[j]
print(li[::-1])

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入一串英文字符:ewkr
['e', 'w', 'k', 'r']
['w', 'r', 'k', 'e']

第7题

用户输入一句英文,将其中的单词以反序输出 例如:hello c sharp — sharp c hello

代码及解释

s = input('输入英文单词:')
li = s.split(' ')
for i in li[::-1]:
	print(i,end=' ')

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入英文单词:book of yy
yy of book

第8题

用户输入一句话,找出所有”呵“的位置

代码及解释

s = input('输入一句话:')
li = []
for i in s:
	li.append(i)
print(li)
for i in range(len(li)):
	if li[i] == '呵':
		print('’呵’在{}号位置'.format(i))

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入一句话:呵呵,哈哈哈呵
['呵', '呵', ',', '哈', '哈', '哈', '呵']
’呵’在0号位置
’呵’在1号位置
’呵’在6号位置

第9题

用户输入一句话,找出所有”呵呵“的位置

代码及解释

s = input('输入一句话:')
li = []
for i in s:
	li.append(i)
print(li)
for i in range(len(li)):
	if i <= len(li)-2:
		if li[i] == '呵' and li[i+1] == '呵':
			print('’呵呵’在{}和{}号位置'.format(i,i+1))

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入一句话:呵呵,呵哈哈哈哈
['呵', '呵', ',', '呵', '哈', '哈', '哈', '哈']
’呵呵’在0和1号位置

第10题

如何判断一个字符串是否是另一个字符串的子串

代码及解释

s = input('输入第一个字符串:')     # 一个字符串中的所有字符在另外一个字符串中全部出现,则这个字符串是另外的一个子串
s1 = input('输入第二个字符串:')
len_s = len(s)
len_s1 = len(s1)
if len_s1>=len_s:
	for i in s:
		sum1 = 0
		for j in s1:
			if i == j:
				sum1 += 1
		if sum1 == 0:
			print('2个字符串不存在子串关系')
			exit()
	print('字符串:',s,'是',s1,'子串')
else:
	for i in s1:
		sum1 = 0
		for j in s:
			if i == j:
				sum1 += 1
		if sum1 == 0:
			print('2个字符串不存在子串关系')
			exit()
	print('字符串:',s1,'是',s,'子串')

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入第一个字符串:rrrt
输入第二个字符串:rt
字符串: rt 是 rrrt 子串

第11题

如何验证一个字符串中的每一个字符均在另一个字符串中出现

代码及解释

s = input('输入第一个字符串:')
s1 = input('输入第二个字符串:')
len_s = len(s)
len_s1 = len(s1)
if len_s1>=len_s:
	for i in s:
		sum1 = 0
		for j in s1:
			if i == j:
				sum1 += 1
		if sum1 == 0:
			print(s,'在',s1,'中没有都出现')
			exit()
	print(s,'在',s1,'中都出现')
else:
	for i in s1:
		sum1 = 0
		for j in s:
			if i == j:
				sum1 += 1
		if sum1 == 0:
			print(s1,'在',s,'中没有都出现')
			exit()
	print(s1,'在'

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入第一个字符串:rrrww
输入第二个字符串:rew
rew 在 rrrww 中没有都出现

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入第一个字符串:rreee
输入第二个字符串:re
re 在 rreee 中都出现

第12题

如何生成无数字的全字母的字符串

代码及解释

import random
s = int(input('输入要生成多少个字母字符:'))
# 初始化
li = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z']
for i in range(s):
	up_or_lower = random.randint(1,2)
	if up_or_lower == 1:  # 若为1则转换为大写
		print(random.choice(li).upper(),end=' ')
	elif up_or_lower == 2:
		print(random.choice(li).lower(),end=' ')

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入要生成多少个字母字符:10
s H T g l m d M q v

第13题

如何随机生成带数字和字母的字符串

代码及解释

import random
s = int(input('输入一共要生成多少个字母和数字的字符:'))
li = ['a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v','w','x','y','z','0','1','2','3','4','5','6','7','8','9']
for i in range(s):  # 随机次数
	up_or_lower = random.randint(1,2)
	if up_or_lower == 1:  # 
		if random.choice(li).isalpha() == True: # 若取到的为字母,则转换为大写
			print(random.choice(li).upper(),end=' ')
		else:
			print(random.choice(li),end=' ')
	elif up_or_lower == 2:
		if random.choice(li).isalpha() == True: # 若取到的为字母,则转换为小写
			print(random.choice(li).lower(),end=' ')
		else:
			print(random.choice(li),end=' ')

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入一共要生成多少个字母和数字的字符:10
3 2 8 H U W 4 a 5 4

第14题

如何判定一个字符串中既有数字又有字母

代码及解释

s = input('输入一串字符串:')
if s.isalpha() == False and s.isdigit() == False:
	print('字符串包含数字和字母')
else:
	print('是单纯的字母或数字')

运行结果

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入一串字符串:rret
是单纯的字母或数字

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入一串字符串:13er
字符串包含数字和字母

D:\Desktop\云计算学习笔记\python>py 练习题4.py
输入一串字符串:222
是单纯的字母或数字
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

程序员Fy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值