本次实验解题逻辑清晰,内容完整,格式符合要求。
班级:软件22-12 姓名:宋思睿
通过编写函数实现下述各题。
1.输入一字符串,各个子串之间按空白字符隔开,分别显式其中最长、最短子串,以及最大、最小字符。
2.输入单个字符,判断并显示该字符是否为大写英文字母、小写英文字母、非英文文字字符、空格、数字或者其它字符。
3.输入一字符串,各个子串之间按空白字符隔开,要求将其中的纯英文子串的大写字母改为小写,含数字的子串中的阿拉伯数字改写为对应的汉字,并且将所有空白字符改写为'%'。
4.字符串加密与解密,输入一字符串,按如下规则加密,将原文中每个字符转换为对应的ascii码后,再将该ascii码加上一 100 100至 200 200之间的整数得到的数值即为该字符对应的密文;解密即为上述过程的逆运算。将该字符串加密后再解密,并且显示原文、密文、解密后文本。
5.输入一字符串,要求统计出该字符串中出现频率最高的字符。
6.令字符串 s='马丽于2022-4-29 10:10刊发了一首诗《Listen to me》,诗词的大意是:\n Mama you taught me to do the right things,\n So now you have to let your baby fly.\n You've given me everything that I will need,\n To make it through this crazy thing called life,\n Thank you Mum!' ,通过编写函数实现下述各题功能。
1 应用正则表达式判断该字符串是否包含0~9的数字和大小写英文字母。
2 根据正则表达式使用中文逗号、中文句号、英文逗号、英文点号、英文感叹号、英文换行符号将该字符串分割成多个子串。
3 应用正则表达式提取该字符串中的日期时间字符串。
4 应用正则表达式提取该字符串中的诗词名称。
5 应用正则表达式提取该字符串中的姓名。
1.
input_string = input("请输入字符串:")
substrings = input_string.split(" ")
min_substring = substrings[0]
max_substring = substrings[0]
min_char = input_string[0]
max_char = input_string[0]
for substring in substrings:
if len(substring) < len(min_substring):
min_substring = substring
elif len(substring) > len(max_substring):
max_substring = substring
for char in substring:
if ord(char) < ord(min_char):
min_char = char
elif ord(char) > ord(max_char):
max_char = char
print("最短子串为:" + min_substring)
print("最长子串为:" + max_substring)
print("最小字符为:" + min_char)
print("最大字符为:" + max_char)
copy
2.
a = input('请输入一个字符:')
b = ord(a)
if 48<=b<=57:
print('这是一个数字')
elif 65<=b<=90:
print('这是一个大写字母')
elif 97 <= b <= 122:
print('这是一个小写字母')
else:
print('这是一个符号')
copy
3.
import re
def number_to_chinese(match):
num = match.group(0)
chinese_num_dict = {
'0': '零',
'1': '一',
'2': '二',
'3': '三',
'4': '四',
'5': '五',
'6': '六',
'7': '七',
'8': '八',
'9': '九'
}
chinese_num = ''
for n in num:
chinese_num += chinese_num_dict[n]
return chinese_num
text = input('请输入字符串:')
text = re.sub(r'\b([A-Za-z]+)\b', lambda match: match.group(1).lower(), text)
text = re.sub(r'\d+', number_to_chinese, text)
text = re.sub(r'\s', '%', text)
print(text)
copy
4.
import random
print('原文')
lll=input()
list(lll)
a=len(lll)
w=[]
eee=[]
s=random.randint(100,200)
for i in range(0,a):
w.append(1)
w[i]=ord(lll[i])+s
print('密文')
print(w)
for i in range(0,a):
w[i]-=s
eee.append('q')
eee[i]=chr(w[i])
print('解文')
print(eee)
copy
5.
Str = input("请输入一串字符:")
resoult = {} # 定义一个空字典
for i in Str: # 遍历输入的字符串,以键值对的方式存储在字典中
resoult[i] = Str.count(i)
for key in resoult: # 遍历字典,格式化输出结果
print(f'"{key}":{resoult[key]}次')
copy
6.
import re
s='''马丽于2022-4-29 10:10刊发了一首诗《Listen to me》,诗词的大意是:\n Mama you taught me to do the right things,\n So now you have to let your baby fly.\n You've given me everything that I will need,\n To make it through this crazy thing called life,\n Thank you Mum!'''
if re.findall('/d+ and lw+',s)!=None:
print("包含0~9的数字和大小写英文字母")
s1 = re.split('[,。,.;!\\n]+', s)
print(s1)
print(re.findall('\d+[-]\d+[-]\d+ \d+[:]\d+',s))
print(re.findall('《.*》',s))
print(re.findall('\A.{2}',s))
copy
int 类型问题,解决方法:问同学,改类型即可
TypeError: 'str' object does not support item assignment 字符串类型不可更改其内容
python真好玩
学习时间 0分钟
操作时间 0分钟
按键次数 0次
实验次数 4次
报告字数 4130字
是否完成 未完成