字符串练习

1. 去掉字符串中所有的空格
2. 获取字符串中汉字的个数
3. 将字母全部转换为大写和小写
4. 根据标点符号对字符串进行分行
5. 去掉字符串数组中每个字符串的空格(循环)
6. 随意输入心中想到的一个书名,然后输出它的字符串长度(len属性)
7. 接收用户输入的字符串,将其中的字符进行排序,并以逆序输出,例如:acdefb - abcdef-
fedcba
8. 用户输入一句英文,将其中的单词以反序输出 例如:hello c sharp --- sharp c hello
9. 用户输入一句话,找出所有”呵“的位置
10. 有个字符串数组,存储了10个书名,书名有长有短,现在将他们统一处理,若长度大于10,则
截取长度为8的子串,将统一处理后的结果输出
11. 用户输入一句话,找出所有”呵呵“的位置
12. 如何判断一个字符串是否是另一个字符串的子串
13. 如何验证一个字符串中的每一个字符均在另一个字符串中出现
14. 如何生成无数字的全字母的字符串
15. 如何随机生成带数字和字母的字符串
16. 如何判定一个字符串中既有数字又有字母

1. 去掉字符串中所有的空格

代码:

s = "     python     "
print(s)
print(s.strip()) #清除左边空格
print(s.lstrip()) #清除右边空格
print(s.restrip())# 清除全部空格

2. 获取字符串中汉字的个数

代码:

def str_count2(str):
	count = 0
	for s in str:
		if '\u4e00' <= s <= '\u9fff':
			count += 1
	return count 
c = str_count2("哈哈哈哈sjink")
print("汉字的个数为%d",c)

 

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

s = "kill bill"
print(s.upper())
t = "BILL DEID"
print(t.lower())

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

s="我需要你,真的,我哭死!"
print(s.replace(",","\n"))

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

s=["ap p le","p ain ep al","ho td og"]
t=[]
for i in s:
	a=i.replace(" ","")
	t.append(a)
print(t)

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

book = input("请输入一个书名:")
print("长度为:%d"% len(book))

 

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

s = input("请输入一个字符串:")
s_list = list(s)
s_list.sort()     # sort() 列表排序字母按照ASCII码表排序,元素类型必须一致
s_list.reverse()   # reverse() 将列表进行反转
print("翻转后:","".join(s_list))  # join() 按照特定的格式将一个可迭代对象拼接为字符串

 

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

word = input("请输入一句英文:")
t=word.split(" ")
t.reverse()
print(" ".join(t))

 

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

words = input("请输入一句话,找出呵的位置:")
index = 1
for i in range(1,len(words)):
	if words[i]=="呵" :
		print("第%d个呵在%d" % (index,i+1))
		index += 1

 10. 有个字符串数组,存储了10个书名,书名有长有短,现在将他们统一处理,若长度大于10,则截取长度为8的子串,将统一处理后的结果输出

book = ["The Old Man and the Sea","One hundred years of solitude","The adventures of Robinson Crusoe","时光剪影"]
for i in book:
	if len(i)>10:
		print(i[0:10])
	else:
		print(i)

 

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

words = input("请输入一句话,找出所有呵呵的位置:")
for i in range(1,len(words)):
	if words[i]=="呵" and words[i+1]=="呵":
		print("呵呵在%s,%s的位置" % (i,i+1))

 

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

word_one = input("请输入第一个字符串:")
word_two = input("请输入第二个字符串:")
if word_one in word_two:
	print("字符串一是字符串二的子集")
if word_two in word_one:
	print("字符串二是字符串一的子集")
else:
	print("不是相关字符串")

 

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

str_one = input("请输入第一个字符串:")
str_two = input("请输入第二个字符串:")
flag = 1
if len(str_one) < len(str_two):
	for i in str_one:
		index = 0
		for j in str_two:
			index += 1
			if i == j:
				break
			if index == len(str_two):
				flag = 0
if len(str_two) <= len(str_one):
	for i in str_two:
		index = 0
		for j in str_one:
			index += 1
			if i == j:
				break
			if index == len(str_one):
				flag = 0
if flag == 1:
	print("字符串中的每一个字符均在另一个字符串中出现")
else:
	print("字符串中的每一个字符没有都在另一个字符串中出现")

 

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

# string.ascii_lowercase,小写字母 ‘abcdefghijklmnopqrstuvwxyz’。
# string.ascii_uppercase,大写字母 ‘ABCDEFGHIJKLMNOPQRSTUVWXYZ’。
# random.choice(seq),从非空序列 seq 返回一个随机元素。 如果 seq 为空,则引发 IndexError。
import random
import string
for i in range(0,random.randint(1,10)):
	print(random.choice(string.ascii_letters),end="")

 

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

import string
import random
for i in range(0,random.randint(1,10)):
	for j in range(0,random.randint(1,10)):
		print(random.choice(string.ascii_letters),end="")
	for j in range(0,random.randint(1,10)):
		print(random.randint(1,10),end="")

 

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

word = input("请输入一个字符串,如何判定一个字符串中既有数字又有字母:")
if word.isalnum() and (not word.isdigit() and not word.isalpha()):
	print("既有数字和字母")
else:
	print("不是既有数字和字母")

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值