
写在前面:笔者在本文给出的PTA编程题答案仅供大家交流、学习,不保证100%正确性,不是唯一解,不一定是最优解。

7-23 删除字符
输入一个字符串 str,再输入要删除字符 c,大小写不区分,将字符串 str 中出现的所有字符 c 删除。提示:去掉两端的空格。
输入格式:
在第一行中输入一行字符 在第二行输入待删除的字符
输出格式:
在一行中输出删除后的字符串
输入样例1:
在这里给出一组输入。例如:
Bee
E
输出样例1:
在这里给出相应的输出。例如:
result: B
输入样例2:
在这里给出一组输入。例如:
7!jdk*!ASyu
!
输出样例2:
在这里给出相应的输出。例如:
result: 7jdk*ASyu
s=input().strip()
a=list(input().strip())
if a[0].isalpha():
a.append(a[0].swapcase())
s1=[i for i in s if i not in a]
print('result:',''.join(s1))

7-24 输出10个不重复的英文字母
随机输入一个字符串,把最左边的10个不重复的英文字母(不区分大小写)挑选出来。 如没有10个英文字母,显示信息“not found”
输入格式:
在一行中输入字符串
输出格式:
在一行中输出最左边的10个不重复的英文字母或显示信息“not found"
输入样例1:
在这里给出一组输入。例如:
poemp134567
输出样例1:
在这里给出相应的输出。例如:
not found
输入样例2
在这里给出一组输入。例如:
This 156is a test example
输出样例2:
在这里给出相应的输出。例如:
Thisaexmpl
n=[i for i in input() if i.isalpha()]
s=''
for i in n:
if len(s)<10:
if i not in s and i.swapcase() not in s:
s+=i
else:
continue
else:
print(s)
break
if len(s)<10:
print('not found')

7-25 逆序的三位数
程序每次读入一个正3位数,然后输出按位逆序的数字。注意:当输入的数字含有结尾的0时,输出不应带有前导的0。比如输入700,输出应该是7。
输入格式:
每个测试是一个3位的正整数。
输出格式:
输出按位逆序的数。
输入样例:
123
输出样例:
321
print(int(input()[::-1]))

7-26 判断两个字符串是否为变位词
如果一个字符串是 另一个字符串的重新排列组合,那么这两个字符串互为变位词。比如,”heart”与”earth”互为变位 词,”Mary”与”arMy”也互为变位词。
输入格式:
第一行输入第一个字符串,第二行输入第二个字符串。
输出格式:
输出“yes”,表示是互换词,输出“no”,表示不是互换词。
输入样例1:
在这里给出一组输入。例如:
Mary
arMy
输出样例1
在这里给出相应的输出。例如:
yes
输入样例2:
在这里给出一组输入。例如:
hello 114
114 hello
输出样例2:
在这里给出相应的输出。例如:
yes
输入样例3:
在这里给出一组输入。例如:
Wellcom
mocllew
输出样例3:
在这里给出相应的输出。例如:
no
print('yes' if sorted(list(input()))==sorted(list(input())) else 'no')

7-27 输入字符串,排序后输出最大字符及该字符在原字符串中的索引
输入字符串,排序后输出最大字符及该字符在原字符串中的索引。相同字符的索引取最大值。提示:用元组实现。
输入格式:
在一行输入字符串。
输出格式:
在一行输出字符和索引。
输入样例:
在这里给出一组输入。例如:
Hello Python
输出样例:
在这里给出相应的输出。字符和数字间空3格。例如:
y 7
n=input()
print(max(list(n)),n.rfind(max(list(n))),sep=' ')

7-28 计算有n个字符串中最长的字符串长度
编写程序,用于计算有n(1<n<10)个字符串中最长的字符串的长度。前导空格不要计算在内!
输入格式:
在第一行中输入n,接下的每行输入一个字符串
输出格式:
在一行中输出最长的字符串的长度
输入样例:
在这里给出一组输入。例如:
4
blue
yellow
red
green
输出样例:
在这里给出相应的输出。例如:
length=6
n=int(input())
maxl=0
for i in range(n):
tmpl=len(input().strip())
maxl=tmpl if maxl<tmpl else maxl
print(f'length={maxl}')

7-29 位1的个数
输入一个非负整数,求它变成二进制后1的个数(提示:用bin函数)。
输入格式:
输入一个正整数。
输出格式:
输出1的个数。
输入样例1:
在这里给出一组输入。例如:
37
输出样例1:
在这里给出相应的输出。例如:
3
输入样例2:
在这里给出一组输入。例如:
0
输出样例2:
在这里给出相应的输出。例如:
0
print(str(bin(int(input()))).count('1'))

7-30 整数的二进制相加
输入两个整数,大小在[0,63]之间。求它们的二进制和,二进制用8位表示。
输入格式:
在一行输入一个整数,在另一行输入另一个整数。
输出格式:
输出它们的二进制和。
输入样例:
在这里给出一组输入。例如:
5
7
输出样例:
在这里给出相应的输出。例如:
00000101
00000111
--------
00001100
x,y=int(input()),int(input())
print('{:0>8b}'.format(x))
print('{:0>8b}'.format(y))
print('--------')
print('{:0>8b}'.format(x+y))