Python字符串

课内实验07(字符串)
班级: 学号: 2020212205090 姓名: 缪纪 得分: 84
一、课内实验题(共10小题,84分)
题型得分 84
【描述】
编写程序,统计并输出某给定字符在给定字符串中出现的次数。
【输入】
第一行给出一个以回车结束的字符串;第二行输入一个字符。
【输出】
在一行中输出给定字符在给定字符串中出现的次数。
【输入示例】

programming is More fun!
m
【输出示例】
2
(2分)
我的答案:
line=input()
ch=input()
print(line.count(ch))
题目得分 2
【描述】
编写程序,从给定字符串中查找某指定的字符。
【输入】
第一行是一个待查找的字符。第二行是一个以回车结束的非空字符串。
【输出】
如果找到,在一行内按照格式"index = 下标"输出该字符在字符串中所对应的最大下标(下标从0开始);否则输出"Not Found"。
【输入示例】

m
programming
【输出示例】
index = 7
(2分)
我的答案:
ch=input()
s=input()
if s.find(ch)==-1:
print(“Not Found”)
else:
print(“index = %d”%(s.rindex(ch)))
题目得分 2
【描述】
编写程序,要求提取一个字符串中的所有数字字符(‘0’……‘9’),将其转换为一个整数输出。
【输入】
在一行中给出一个以回车结束的字符串。
【输出】
在一行中输出转换后的整数。
【输入示例】

free82jeep5
【输出示例】
825
(10分)
我的答案:
s=input()
a=0
for ch in s:
if ch.isdigit()==True:
a=a*10+int(ch)
print(a)
题目得分 10
【描述】
脱氧核糖核酸(DNA)由两条互补的碱基链以双螺旋的方式结合而成。而构成DNA的碱基共有4种,分别为腺瞟呤(A)、鸟嘌呤(G)、胸腺嘧啶(T)和胞嘧啶(C)。在两条互补碱基链的对应位置上,腺瞟呤总是和胸腺嘧啶配对,鸟嘌呤总是和胞嘧啶配对。你的任务就是根据一条单链上的碱基序列,给出对应的互补链上的碱基序列。
【输入】
第一行是一个正整数n,表明共有n条要求解的碱基链。
以下共有n行,每行用一个字符串表示一条碱基链。这个字符串只含有大写字母A、T、G、C,分别表示腺瞟呤、胸腺嘧啶、鸟嘌呤和胞嘧啶。每条碱基链的长度都不超过255。
【输出】
共有n行,每行为一个只含有大写字母A、T、G、C的字符串。分别为与输入的各碱基链互补的碱基链。
【输入示例】
5
ATATGGATGGTGTTTGGCTCTG
TCTCCGGTTGATT
ATATCTTGCGCTCTTGATTCGCATATTCT
GCGTTTCGTTGCAA
TTAACGCACAACCTAGACTT
【输出示例】
TATACCTACCACAAACCGAGAC
AGAGGCCAACTAA
TATAGAACGCGAGAACTAAGCGTATAAGA
CGCAAAGCAACGTT
AATTGCGTGTTGGATCTGAA
【来源】
《Python程序设计基础》第5章编程题1。
(10分)
我的答案:
x = eval(input())
for i in range (1,x+1):
s=input()
s=s.replace(‘A’,‘B’)
s=s.replace(‘T’,‘A’)
s=s.replace(‘B’,‘T’)
s=s.replace(‘C’,‘D’)
s=s.replace(‘G’,‘C’)
s=s.replace(‘D’,‘G’)
print(s)

题目得分 10
【描述】
输入一个字符串,统计并输出该字符串中26个英文字母(不区分大小写)出现的次数。
【输入】
输入一个字符串。
【输出】
分行输出26个英文字母(不区分大小写)出现的次数。
【输入示例】
I am a student.
【输出示例】
a:2
d:1
e:1
i:1
m:1
n:1
s:1
t:2
u:1
【来源】
《Python程序设计基础》第5章编程题2。(10分)
我的答案:
s=input()
s=s.lower()
a=sorted(s)
b=’’
for i in a:
if i not in b:
b+=i
if i>=‘a’:
print(i+’:’+str(a.count(i)))
题目得分 10
【描述】
输入5个字符串,输出其中最大的字符串。
【输入】
输入5个字符串。
【输出】
输出5个字符串中最大的字符串。
【输入示例】

red
blue
yellow
green
purple
【输出示例】
yellow
【来源】
《Python程序设计基础》第5章编程题3。
(10分)
我的答案:
a=input()
b=input()
c=input()
d=input()
e=input()
print(max(a,b,c,d,e))
题目得分 10
【描述】
两个单词如果包含相同的字母,次序不同,则称为字母易位词(anagram)。例如,"silent"和"listen"是字母易位词。
定义函数:def is_anagram(s1, s2),检查两个单词是否是字母易位词,如果是,返回True;否则返回False。
【输入】
有两行,分别对应两个单词。
【输出】
若两个单词是字母易位词,输出True,否则输出False。
【输入示例】

silent
listen
【输出示例】
True
【来源】
《Python程序设计基础》第5章编程题4。(10分)
我的答案:
#coding=utf-8
def is_anagram(str1,str2):
if sorted(str1)==sorted(str2) and str1!=str2 :
return True
else:
return False
题目得分 10
【描述】
首字母缩略词是由一个短语中每个单词的第一个字母组成,均为大写。例如,CPU是短语"central processing unit"的缩写。
定义函数:def is_acronym(s),s是短语,返回短语的首字母缩略词。
【输入】
一行中输入一个短语,短语中每个单词以空格间隔。
【输出】
该短语的首字母缩略词。
【输入示例】

central processing unit
【输出示例】
CPU
(10分)
我的答案:
#coding=utf-8
def is_acronym(phrase):
phrase=phrase.title()
p=’’
p+=phrase[0]
for i in range(len(phrase)):
if phrase[i]==’ ':
p+=phrase[i+1]
return p
题目得分 10
【描述】
依次计算一系列给定字符串的字母值,字母值为字符串中每个字母对应的编号值(A对应1,B对应2,以此类推,不区分大小写字母,非字母字符对应的值为0)的总和。例如,Colin的字母值为3+15+12+9+14=53
【输入】多行字符串,每个字符串占一行。
【输出】
计算并输出每行字符串的字母值。
【输入示例】

Colin
ABC
【输出示例】
53
6
(10分)
我的答案:
s1=’’
for s in iter(input,s1):
sum=0
for i in s:
if ‘a’<=i<=‘z’:
sum+=ord(i)-96
elif ‘A’<=i<=‘Z’:
sum+=ord(i)-64
print(sum)

题目得分 10
【描述】
“distance"和"disinfection"的共有前缀是"dis”。
定义函数:def prefix(s1, s2),检查两个字符串是否有共有前缀,如果有,返回该共有前缀;否则返回None。
编写一个main函数,输入两个字符串,调用prefix函数,显示共有前缀或"No common prefix"。
【输入】
有两行,分别对应两个字符串。
【输出】
若两个字符串有共有前缀,输出该共有前缀,否则输出"No common prefix"。
【输入示例】

distance
disinfection
【输出示例】
dis
(10分)
我的答案:
s1=input()
s2=input()
s=’’
x=-1
flag=0
for i in s1:
x+=1
if is2[x]:
s+=i
flag=1
else:
break
if(flag
1):
print(s)
else:
print(‘No common prefix’)
题目得分 10

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值